Date类和Calendar类
Date
Date表示特定的瞬间,精确到毫秒。Date类中的大部分方法都已经被Calendar类中的方法所取代
时间单位
1秒=1000毫秒
1毫秒=1000微秒
1微秒=1000纳秒
eg :
public class Demo01 {
public static void main(String[] args) {
//1.创建Date对象
Date date1 = new Date();
System.out.println(date1.toString());
System.out.println(date1.toLocaleString ());
//昨天
Date date2 = new Date(date1.getTime()-(60*60*24*1000));
System.out.println(date2.toLocaleString ());
//2.方法after before
boolean b1 = date1.after(date2);
System.out.println(b1);
boolean b2 = date1.before(date2);
System.out.println(b2);
//比较compareTo();
int d = date2.compareTo(date1);
System.out.println(d);
//比较是否相等 equals()
boolean b3 = date1.equals(date2);
System.out.println(b3);
}
}
Calendar
Calendar提供了获取或设置各种日历字段的方法
构造方法
protected Calendar() :由于修饰符是protected,所以无法直接创建该对象
其他方法
| 说明 | |
|---|---|
| static Calendar getInstance() | 使用默认时区和区域获取日历 |
| void set(int year,int month,int date,int hourofday,int minute,int second) | 设置日历的年、月、日、时、分、秒 |
| int get(int field) | 返回给定日历字段的值。字段比如年、月、日等 |
| void setTime(Date date) | 用给定的Date设置此日历的时间。Date-Calendar |
| Date getTime() | 返回一个Date表示此日历的时间。Calendar-Date |
| void add(int field,int amount) | 按照日历的规则,给指定字段添加或减少时间量 |
| long getTimeInMillies() |
eg :
public class Demo02 {
public static void main(String[] args) {
//创建Calendar对象
Calendar calendar = Calendar.getInstance();
System.out.println(calendar.getTime().toLocaleString ());
System.out.println(calendar.getTimeInMillis());
//2.获取时间信息
//获取年
int year =calendar.get(Calendar.YEAR);
//月 从0-11
int month =calendar.get(Calendar.MONTH);
//日
int day =calendar.get(Calendar.DAY_OF_MONTH);//Date
//小时
int hour =calendar.get(Calendar.HOUR_OF_DAY);//HOUR12小时,HOUR_OF_DAY24小时
//分钟
int minute =calendar.get(Calendar.MINUTE);
//秒
int second =calendar.get(Calendar.SECOND);
System.out.println(year+"年"+(month+1)+"月"+day+"日"+hour+":"+minute+":"+second);
//3.修改时间
Calendar calendar2 = Calendar.getInstance();
calendar2.set(Calendar.DAY_OF_MONTH,6);
System.out.println(calendar2.getTime().toLocaleString ());
//4.add方法修改时间
calendar2.add (Calendar.HOUR,1);
System.out.println(calendar2.getTime().toLocaleString ());
//5.补充方法
calendar2.add(Calendar.MONTH,1);
int max = calendar2.getActualMaximum (Calendar.DAY_OF_MONTH);
int min = calendar2.getActualMinimum (Calendar.DAY_OF_MONTH);
System.out.println(max);
System.out.println(min);
}
}

浙公网安备 33010602011771号