首页 > 其他 > 详细

关于Calendar类使用中遇到的一些问题

时间:2020-10-31 18:09:11      阅读:31      评论:0      收藏:0      [点我收藏+]

关于Calendar类使用中遇到的一些问题

1、为什么类似Calender.YEAR之类的字段的使用需要使用get方法来获取?

程序如下:

public class Test {
    public static void main(String[] args) {
        Calendar cc = Calendar.getInstance();

        // 获取cc的年份
        System.out.println("正确结果需要使用get方法 —————— " + cc.get(Calendar.YEAR));
        System.out.println("直接打印字段 —————— " + Calendar.YEAR);
    }
}

原因:

  • Calendar类中的字段其实是一个个的常量,类型为int型,调用get方法其实是传递这些字段对应的int数值,再通过其他的手段获取到我们想要的正确含义的值

再一个例子:

// 获取“上午”还是“下午”的值
Calendar calendar = Calendar.getInstance();

if(calendar.get(Calendar.AM_PM) == 0) {
    System.out.println("现在是上午哦");
} else {
    System.out.println("现在是下午哦");
}
  • 按照国际上的习惯,将晚上12:00到中午12:00之间的时间归为“AM”,即上午;将中午12:00到晚上12:00之间的时间归为“PM”,即下午。再准确的说是左闭右合,[0, 12) 为上午, AM_PM 值为 1 [12, 24)为下午,
  • AM_PM 对应的常量值为 9

2、获取星期值的一些问题

代码如下:

// 获取星期几
String[] week = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
System.out.println(week[calendar.get(Calendar.DAY_OF_WEEK) - 1]);
  • 按照国际上的习惯,将星期日作为每个星期的第一日
  • Calendar.DAY_OF_WEEK 的确表示现在是星期几,但是是基一的标准,即“1”对应的日期为“星期日”,以此类推

关于Calendar类使用中遇到的一些问题

原文:https://www.cnblogs.com/lorz5-blog/p/13906567.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!