Java Calender类

Calender类

  Calender对象的创建(抽象的)

public static Calender getInstance() //获取到当前JVM运行的系统的时间
public staitc Calender getInstance(Locale aLocale) //获取到一个时区常量,如中国

Calendar calendar=Calendar.getInstance();  //使用默认时区并指向当前系统时间创建一个日历实例
int year=calendar.get(Calendar.YEAR); //获取当前年
int month=calendar.get(Calendar.MONTH); //获取当前月,因为外国人记月从0开始所以加1
int day=calendar.get(Calendar.DATE); //获取当前日

System.out.println(year+"年"+(month+1)+"月"+day+"日");

运行结果:
2022年2月13日
//获取当前日历对象所对应的Date对象
Calendar calendar=Calendar.getInstance();
Date currentTime=calendar.getTime();
 
SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd");
System.out.println(simpleDateFormat.format(currentTime));

运行结果:2022-02-13
public class Demo03 {

    public static void main(String[] args) {

        int year=2000;
        int month=2;
        int day=3;
        Employee employee=new Employee();

        Calendar calendar=Calendar.getInstance();
        calendar.set(Calendar.YEAR,year);
        calendar.set(Calendar.MONTH,month-1);
        calendar.set(Calendar.DATE,day);
        Date birth=calendar.getTime();  //获取date对象

        String births=new SimpleDateFormat("yyyy-MM-dd").format(birth);
        System.out.println(births);

    }
}
public static final int AM //指示从午夜到中午之前这段时间的AM_PM字段值
public static final int PM //指示从中午到午夜之前这段时间的AM_PM字段值
public static final int YEAR //日历中的年份
public static final int MONTH //日历中的月份,从0开始
public static final int DATE //日历当中当月的天,从1开始
DAY_OF_MONTH //当月的第几天,从1开始
(1) Calendar的DAY_OF_MONTH, DAY_OF_YEAR, DATE的区别,例子:

(2) cal1.add(Calendar.DAY_OF_MONTH,1);  

(3) cal1.add(Calendar.DAY_OF_YEAR,1);  

(4) cal1.add(Calendar.DATE,1);

(5) 就单纯的add操作结果都一样,因为都是将日期+1

(6) 就没有区别说是在月的日期中加1还是年的日期中加1

(7) 但是Calendar设置DAY_OF_MONTH和DAY_OF_YEAR的目的不是用来+1

(8) 将日期加1,这通过cal1.add(Calendar.DATE,1)就可以实现

(9) DAY_OF_MONTH的主要作用是cal.get(DAY_OF_MONTH),用来获得这一天在是这个月的第多少天

(10) Calendar.DAY_OF_YEAR的主要作用是cal.get(DAY_OF_YEAR),用来获得这一天在是这个年的第多少天。

(11) 同样,还有DAY_OF_WEEK,用来获得当前日期是一周的第几天

public static final int HOUR //日历12小时表示0-11
public static final int HOUR_OF_DAY //日历24小时制表示
public static final int MINUTE //指示一小时中的分钟,0-59
public static final int SECOND //指示一分钟的秒
public static final int MILLISECOND //指示一分钟的毫秒
public static final int HOUR_OF_DAY //日历24小时制表示
public static final int MINUTE //指示一小时中的分钟
public abstract void add(int field,int value) //更改日历中某个字段field的值
public boolean after(Object when) //判断日历当前时间是否在给定的时间之前,返回值1,-1,0
public boolean before(Object when) //判断日历当前时间是否在给定的时间之后,返回值1,-1,0
public int compareTo(Calender anotherCalender) //比较两个Calender的时间值从历元至现在的毫秒差

  以上是Calender主要常量字段

 

 

  Calender的主要方法

public final Date getTime() //获取日历当前时间对象
public void set(int field,int value) //将给定的日历字段field设置为给定value
public final void set(int year,int month,int date) //设置日历的年份、月份、日期值
public final void set(int year,int month,int date,int hourOfDay,int minute,int second) //设置日历的年、月、日、时、分、秒的值

 

posted @ 2022-02-13 10:42  十三加油哦  阅读(201)  评论(0)    收藏  举报