Java题目笔记(十四)Date +综合练习

一、时间计算+时间比较

import java.util.Date;
import java.util.Random;public class Main {public static void main(String[] args) {//需求1Date d1=new Date(0L);  //从时间原点开始经过了0毫秒long time=d1.getTime();time=time+1000L*60*60*24*365; //一年的时间d1.setTime(time);//修改时间System.out.println(d1);//需求2Random r=new Random();Date d2=new Date(Math.abs(r.nextInt()));  //Math.abs 获取绝对值Date d3=new Date(Math.abs(r.nextInt()));System.out.println(d2);System.out.println(d3);long time1=d2.getTime();long time2=d3.getTime();if(time1>=time2){ //long 是基本数据类型,可以直接比较System.out.println("d1 is later");}elseSystem.out.println("d2 is earlier");}
}

二、按照指定格式展示

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Random;
import java.util.logging.SimpleFormatter;public class Main {public static void main(String[] args) throws ParseException {//解析字符串为Date对象时 指定格式必须与字符串中的时间格式一致SimpleDateFormat sdf1=new SimpleDateFormat("yyyy-MM-dd");String str="2000-11-11";Date str1=sdf1.parse(str);System.out.println(str1); //解析结果 Sat Nov 11 00:00:00 CST 2000}
}

三、秒杀活动

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Random;
import java.util.logging.SimpleFormatter;public class Main {public static void main(String[] args) throws ParseException {//下单时间:String str1 = "2023年11月11日 0:01:00";String str2 = "2023年11月11日 0:11:0";//秒杀结束时间:String str3 = "2023年11月11日 0:10:0";SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");Date str = sdf1.parse(str3);long last_time = str.getTime();str=sdf1.parse(str1);long time1=str.getTime();str=sdf1.parse(str2);long time2=str.getTime();if(time1>last_time){System.out.println("小贾同学来不急");}else System.out.println("小贾同学来得急");if(time2>last_time){System.out.println("小皮同学来不急");}else System.out.println("小皮同学来得急");}
}

四、集合与包装类综合练习

用集合记录键盘录入的整数,要求当集合内元素之和大于200时停止输入。

import java.util.ArrayList;
import java.util.Scanner;public class Main {public static void main(String[] args) {//用集合记录键盘录入的整数,要求当集合内元素之和大于200时停止输入。ArrayList<Integer> list=new ArrayList<>();Scanner sc=new Scanner(System.in);int sum=0;while(sum<=200){System.out.println("输入整数");String number=sc.nextLine();Integer integer=new Integer(number);int num=Integer.parseInt(number);if(num>100||num<0){System.out.println("请输入0~100的整数");continue;}list.add(integer);sum+=num;}System.out.println("超过200了,总值为"+sum);}
}

五、正则表达式与包装类综合练习

import java.util.Scanner;
public class Main {public static void main(String[] args) {//自己实现ParseInt方法的效果,将字符串形式的数据转换成整数//要求:字符串中只能是数字不能有其他字符//最少一位,最多10位//0不能开头 0:48Scanner sc=new Scanner(System.in);System.out.println("输入整数字符串:");String str=sc.nextLine();String regex="[1-9]\\d{0,9}";int num=0;if(str.matches(regex)){int[] array=new int[str.length()];for(int i=0;i<str.length();i++){char number=str.charAt(i);array[i]=number-48;// num=num*10+array[i];}int index=0;for(int i=array.length-1;i>=0;i--){num+=array[index]*get(i);index++;}System.out.println("输入数字: "+num);}else System.out.println("输入字符串有误");}public static int get(int time){int x=1;while(time>0){x*=10;time--;}return x;}
}

六、ToBinary方法

自己实现ToBinary方法的效果,将一个十进制整数的数据转换成字符串的二进制数据

import java.util.Scanner;
public class Main {public static void main(String[] args) {//自己实现ToBinary方法的效果,将一个十进制整数的数据转换成字符串的二进制数据Scanner sc=new Scanner(System.in);System.out.println("输入十进制整数: ");int number=sc.nextInt();StringBuilder stringBuilder=new StringBuilder();int temp=number;while(temp!=0) {System.out.println("商: "+getShangYu(temp)[0]+" "+"余数:"+getShangYu(temp)[1]);stringBuilder.append(getShangYu(temp)[1]);temp = getShangYu(temp)[0];}System.out.print("逆序: ");StringBuilder result=new StringBuilder();for(int i=stringBuilder.length()-1;i>=0;i--){result.append(stringBuilder.charAt(i));System.out.print(stringBuilder.charAt(i)+" ");}System.out.println();System.out.print("正序: ");for(int i=0;i<stringBuilder.length();i++){System.out.print(stringBuilder.charAt(i)+" ");}System.out.println();String res=result.toString();System.out.println(res);System.out.println(stringBuilder.reverse().toString());}public static int[] getShangYu(int number1){int temp=number1;int count=0;while(temp>=2){count++;temp=temp-2;}int[] arr=new int[2];arr[0]=count; //商arr[1]=temp; //余数return arr;}
}

七、ChronoUnit类使用

import java.time.LocalDate;
import java.time.temporal.ChronoUnit;public class Main {public static void main(String[] args) { //JDK8//算自己活了多少天LocalDate today = LocalDate.now();LocalDate birthday=LocalDate.of(2000,12,12);System.out.println("Today is: " + today);System.out.println(ChronoUnit.DAYS.between(birthday, today));}
}
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;public class Main {public static void main(String[] args) throws ParseException { //JDK7//算自己活了多少天SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy,MM,dd");String bir="2000,12,12";Date birthday=simpleDateFormat.parse(bir);Date today=new Date();long time1=birthday.getTime();//long time2=today.getTime();  //返回的是微秒long time2=System.currentTimeMillis();long result=(time2-time1)/1000/60/60/24;System.out.println(result);}
}

七、判断闰年


import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Scanner;public class Main {public static void main(String[] args) throws ParseException { //JDK7//判断一个年份是闰年还是平年//二月有29天是闰年//一年有366天是闰年Scanner sc=new Scanner(System.in);System.out.println("输入年份: ");String year=sc.nextLine();SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd");String str1="-02-01";String str2="-03-01";String str3="-01-01";String str4="-12-31";str1=year+str1;str2=year+str2;str3=year+str3;str4=year+str4;Date date1=simpleDateFormat.parse(str1);Date date2=simpleDateFormat.parse(str2);Date date3=simpleDateFormat.parse(str3);Date date4=simpleDateFormat.parse(str4);long time=(date2.getTime()-date1.getTime())/1000/60/60/24;if(time!=29)System.out.println(time+"天,"+year+"不是闰年");elseSystem.out.println(time+"天,"+year+"是闰年");time=((date4.getTime()-date3.getTime())/1000/60/60/24+1);System.out.println(time);if(time!=366){System.out.println(time+"天,"+year+"不是闰年");}else System.out.println(time+"天,"+year+"是闰年");标准方法//通过对三月一日进行减去一天,得到的日期是28 还是 29进行判断Calendar calendar =Calendar.getInstance();Scanner sc=new Scanner(System.in);System.out.println("输入年份: ");int year=sc.nextInt();calendar.set(year,2,1); // Calendar 中 月份对应的索引为 0~11calendar.add(Calendar.DAY_OF_MONTH,-1);int day=calendar.get(Calendar.DAY_OF_MONTH);if(day==29)System.out.println("是闰年");else System.out.println("不是闰年");}
}
import java.text.ParseException;
import java.time.LocalDate;
import java.time.temporal.ChronoUnit;
import java.util.Scanner;public class Main {public static void main(String[] args) throws ParseException { //JDK8//判断一个年份是闰年还是平年//二月有29天是闰年//一年有366天是闰年Scanner sc=new Scanner(System.in);System.out.println("输入年份: ");int year=sc.nextInt();LocalDate localDate=LocalDate.of(year,2,1);LocalDate localDate2=LocalDate.of(year,3,1);LocalDate localDate3=LocalDate.of(year,1,1);LocalDate localDate4=LocalDate.of(year+1,1,1);long day=ChronoUnit.DAYS.between(localDate,localDate2);if(day!=29)System.out.println(day+"天,"+year+"不是闰年");else System.out.println(day+"天,"+year+"是闰年");day=ChronoUnit.DAYS.between(localDate3,localDate4);if(day!=366)System.out.println(day+"天,"+year+"不是闰年");else System.out.println(day+"天,"+year+"是闰年");标准方法同JDK7LocalDate localDate5=LocalDate.of(year,3,1);LocalDate localDate6=localDate5.minusDays(1);day=localDate6.getDayOfMonth();System.out.println(day);  //输入2024  day=29}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/7503.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

【C++练习】计算应发利润总数

题目&#xff1a;计算应发利润总数 问题描述&#xff1a; 某公司根据销售额 x&#xff08;单位&#xff1a;元&#xff09;计算应发利润总数 y&#xff08;单位&#xff1a;元&#xff09;&#xff0c;具体计算规则如下&#xff1a; 如果销售额 x 小于等于 100,000 元&#…

Permissions 0755 for ‘/etc/ssh/ssh_host_rsa_key‘ are too open.问题解决

1、问题背景 代码上库公司git后,将项目上出的程序烧录到设备中,wifi能够正常链接&#xff0c;但是通过wifi链接 ssh登录设备失败。把调试串口引出,查看linux启动log,发现如下打印信息&#xff1a; WARNING: UNPROTECTED PRIVATE KEY FILE! Permissions 075…

企业网络架构基础

1.网络宇宙 似宇宙洪荒&#xff0c;浩瀚无边&#xff0c;深不可测&#xff1b;网络案例似璀璨群星&#xff0c;千变万化&#xff0c;闪耀环宇。学习网络技术似夜观星象&#xff0c;每有所得&#xff0c;便拍案惊奇&#xff0c;夜不能寐 2.企业网络 企业网络已经广泛应用在各行…

Vue 3 的 全局状态管理

1.思路梳理 工厂仓拣货信息&#xff1a;Factory Picking Info (FPI)工厂仓调度信息&#xff1a;Factory Scheduling Info (FSI)DC 收货信息&#xff1a;DC Receiving Info (DCRI)上架信息&#xff1a;Shelving Info (SI)盘点信息&#xff1a;Inventory Count Info (ICI)移位信…

基于Spring Boot的在线装修管理系统的设计与实现,LW+源码+讲解

摘 要 互联网发展至今&#xff0c;无论是其理论还是技术都已经成熟&#xff0c;而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播&#xff0c;搭配信息管理工具可以很好地为人们提供服务。针对信息管理混乱&#xff0c;出错率高&#xff0c;信息安全性差&#…

神经网络基础--什么是正向传播??什么是方向传播??

前言 本专栏更新神经网络的一些基础知识&#xff1b;这个是本人初学神经网络做的笔记&#xff0c;仅仅堆正向传播、方向传播就行了了一个讲解&#xff0c;更加系统的讲解&#xff0c;本人后面会更新《李沐动手学习深度学习》&#xff0c;会更有详细讲解;案例代码基于pytorch&a…

移动电源充气泵SIC8833应用方案设计

电动充气泵方案基于简单原理&#xff0c;使用时能自动检测轮胎压力。当胎压低于预设值时&#xff0c;电机自动启动&#xff0c;将压缩气体经进气管泵入轮胎。一旦充气泵达到设定的胎压上限&#xff0c;电机将自动关闭。该方案由压力传感器、ADC芯片、主控芯片等核心组件构成。其…

IP Source Guard

一、什么是IP Source Guard IP Source Guard&#xff08;IPSG&#xff09;是一种基于 IP/MAC 的端口流量过滤技术&#xff0c;用于防止局域网内的 IP 地址欺骗攻击。 隔绝非法DHCP服务器&#xff1a;通过配置非信任端口&#xff0c;IPSG可以有效阻止非法DHCP服务器向网络中的…

赛元MCU 脱机烧录步骤

烧录设置 生成烧录配置文件 载入配置文件 下载程序到烧录器中 并 对比 脱机烧录 1、 将SC-LINK 使用外部5V电源供电 2、将烧录口对准主板烧录接口 3、busy亮红灯&#xff0c;进入烧录ing&#xff0c;烧录成功后&#xff0c;OK灯亮蓝灯 注意事项 其中工程校验和 可以作为程序…

数字信号处理Python示例(8)使用复数指数函数生成正弦函数和余弦函数

文章目录 前言一、相量叠加原理二、使用旋转相量生成余弦和正弦波的Python代码三、仿真结果及分析写在后面的话 前言 首先给出使用复数指数函数生成正弦函数和余弦函数的数学表达式&#xff0c;然后给出Python仿真代码&#xff0c;并绘制了生成的函数图形&#xff0c;最后给出…

Pr 视频过渡:沉浸式视频 - VR 球形模糊

效果面板/视频过渡/沉浸式视频/VR 球形模糊 Video Transitions/Immersive Video/VR Spherical Blur VR 球形模糊 VR Spherical Blur用于 VR 视频中的模糊式场景切换&#xff0c;模糊效果以球形方式呈现&#xff0c;使画面逐渐模糊或清晰。 自动 VR 属性 Auto VR Properties 默…

智启未来,趣享生活 德国卡赫举办系列新品首发活动

全球最大的清洁设备和清洁解决方案提供商德国卡赫&#xff0c;于11月6日在第七届进博会新品发布平台举办主题为“智启未来&#xff0c;趣享生活”的新品发布会&#xff0c;揭开全球首发新品可折叠式手持清洗机KHB Air以及亚洲首发新品商用清洁机器人KIRA CV 50的神秘面纱。作为…

在Scrapy爬虫中应用Crawlera进行反爬虫策略

在互联网时代&#xff0c;数据成为了企业竞争的关键资源。然而&#xff0c;许多网站为了保护自身数据&#xff0c;会采取各种反爬虫技术来阻止爬虫的访问。Scrapy作为一个强大的爬虫框架&#xff0c;虽然能够高效地抓取网页数据&#xff0c;但在面对复杂的反爬虫机制时&#xf…

【基于PSINS工具箱】以速度为观测量的SINS/GNSS组合导航,UKF滤波

基于【PSINS工具箱】&#xff0c;提供一个MATLAB例程&#xff0c;仅以速度为观测量的SINS/GNSS组合导航&#xff08;滤波方式为UKF&#xff09; 文章目录 工具箱程序简述运行结果 代码程序讲解MATLAB 代码教程&#xff1a;使用UKF进行速度观测1. 引言与基本设置2. 初始设置3. U…

【深度学习滑坡制图|论文解读2】基于融合CNN-Transformer网络和深度迁移学习的遥感影像滑坡制图方法

【深度学习滑坡制图|论文解读2】基于融合CNN-Transformer网络和深度迁移学习的遥感影像滑坡制图方法 【深度学习滑坡制图|论文解读2】基于融合CNN-Transformer网络和深度迁移学习的遥感影像滑坡制图方法 文章目录 【深度学习滑坡制图|论文解读2】基于融合CNN-Transformer网络和…

二次封装 el-pagination 组件存在的问题

在使用 Element Plus 组件时&#xff0c;有时会遇到组件不完全符合需求的情况&#xff0c;这时可能需要对其进行二次封装。在封装 Pagination 组件时&#xff0c;我们会发现一些属性和函数无法正常使用&#xff0c;下面将详细探讨这些问题&#xff0c;并提供一下思路和想法。 …

Elasticsearch-linux环境部署

本文主要介绍linux下elasticsearch的部署。通过在一台linux服务器中分别对elasticsearch-6.7.2版本&#xff0c;elasticsearch-7.3.0版本来进行安装&#xff0c;记录在安装elasticsearch-7.3.0版本时出现的异常情况&#xff0c;以及elasticsearch-head的安装。 基础环境 本机已…

超子物联网HAL库笔记:串口篇

超子物联网 HAL库学习 汇总入口&#xff1a; 超子物联网HAL库笔记&#xff1a;[汇总] 写作不易&#xff0c;如果您觉得写的不错&#xff0c;欢迎给博主来一波点赞、收藏~让博主更有动力吧&#xff01; 这篇文章介绍了HAL库串口大多的使用方法&#xff0c;并配有详细的思路和注释…

指标平台帮助企业在业务运营过程中快速定位和解决业务问题

在业务运营中&#xff0c;指标平台扮演着至关重要的角色&#xff0c;它将复杂的数据模型转化为业务人员易于理解的业务指标。通过实时监控、预警归因、自助分析等功能&#xff0c;帮助企业快速定位和解决业务问题。以 Aloudata CAN 自动化指标平台为例&#xff0c;该平台通过统…

纯血鸿蒙系统 HarmonyOS NEXT自动化测试实践

1、测试框架选择 hdc&#xff1a;类似 android 系统的 adb 命令&#xff0c;提供设备信息查询&#xff0c;包管理&#xff0c;调试相关的命令ohos.UiTest&#xff1a;鸿蒙 sdk 的一部分&#xff0c;类似 android sdk 里的uiautomator&#xff0c;基于 Accessibility 服务&…