risc-v中文社区

 找回密码
 立即注册
查看: 878|回复: 0

[原创] java for risc-v系列知识讲座(12)--- Calendar时间处理类

[复制链接]

20

主题

23

帖子

96

积分

注册会员

Rank: 2

积分
96
发表于 2021-8-16 17:01:59 | 显示全部楼层 |阅读模式
//采用默认时区和语言环境
Calendar calendar = Calendar.getInstance(); //获取或设置时间
System.out.println("年:" + calendar.getWeekYear());
System.out.println("年:" + calendar.get(Calendar.YEAR));
System.out.println("月:" + (calendar.get(Calendar.MONTH)+1)); //只有月分才需要加1 因为月分从0开始计算
System.out.println("日:" + calendar.get(Calendar.DAY_OF_MONTH));
System.out.println("时:" + calendar.get(Calendar.HOUR_OF_DAY));//24小时制
System.out.println("时:" + calendar.get(Calendar.HOUR));//12小时制
System.out.println("分:" + calendar.get(Calendar.MINUTE));
System.out.println("秒:" + calendar.get(Calendar.SECOND));
显示如下:
年:2021
年:2021
月:8
日:16
时:16
时:4
分:32
秒:6


Calendar calendar1 = Calendar.getInstance();
calendar1.set(2021,7,16,0,0,0);
Calendar calendar2 = Calendar.getInstance();
calendar2.set(2021,7,16,0,0,0);
System.out.println(calendar1.getTime());
System.out.println(calendar2.getTime());
System.out.println(calendar2.before(calendar1));
System.out.println( calendar2.after(calendar1));
System.out.println(calendar1.after(calendar2));
System.out.println(calendar1.before(calendar2));
直接Run显示:
Mon Aug 16 00:00:00 CST 2021
Mon Aug 16 00:00:00 CST 2021
false
false
false
false
如果两次getInstance之间延时:
Calendar calendar1 = Calendar.getInstance();
calendar1.set(2021,7,16,0,0,0);
Thread.sleep(10000); //10秒
Calendar calendar2 = Calendar.getInstance();
calendar2.set(2021,7,16,0,0,0);
System.out.println(calendar1.getTime());
System.out.println(calendar2.getTime());
System.out.println(calendar2.before(calendar1));
System.out.println( calendar2.after(calendar1));
System.out.println(calendar1.after(calendar2));
System.out.println(calendar1.before(calendar2));
直接Run显示:
Mon Aug 16 00:00:00 CST 2021
Mon Aug 16 00:00:00 CST 2021
false
false
false
false
但当我在第二个getInstance打上断点,停下来之后再运行时:
Mon Aug 16 00:00:00 CST 2021
Mon Aug 16 00:00:00 CST 2021
true
false
true
false
如果将两个set都注释掉:
Calendar calendar1 = Calendar.getInstance();
//        calendar1.set(2021,7,16,0,0,0);
Thread.sleep(10000);
Calendar calendar2 = Calendar.getInstance();
//        calendar2.set(2021,7,16,0,0,0);
System.out.println(calendar1.getTime());
System.out.println(calendar2.getTime());
System.out.println(calendar2.before(calendar1));
System.out.println( calendar2.after(calendar1));
System.out.println(calendar1.after(calendar2));
System.out.println(calendar1.before(calendar2));
则显示:
Mon Aug 16 16:52:29 CST 2021
Mon Aug 16 16:52:39 CST 2021
false
true
false
true

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



Archiver|手机版|小黑屋|risc-v中文社区

GMT+8, 2024-5-4 17:29 , Processed in 0.019262 second(s), 17 queries .

risc-v中文社区论坛 官方网站

Copyright © 2018-2021, risc-v open source

快速回复 返回顶部 返回列表