Date类封装了当前日期和时间,提供两个构造函数来实例化Date对象。
Date():
该方法使用当前日期和时间来初始化创建对象
Date date1 = new Date();
Date(Long millisec):
传入一个从1970年1月1日起的毫秒数
Date date = new Date(359999);
toString():
获取日期和时间
System.out.println(date.toString());
System.out.println(date1.toString());
getTime():
返回对象时间至与1970年1月1日之间的毫秒数
可以通过返回的毫秒数来比较时间大小
//返回对象时间至与1970年1月1日之间的毫秒数
System.out.println(date.getTime());
System.out.println(date1.getTime());
日期比较:
//时间比较
System.out.println(date.after(date1));
System.out.println(date.before(date1));
System.out.println(date.equals(date1));
格式化日期
SimpleDateFormat允许用户自定义日期时间格式
//格式化日期
SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
System.out.println(sd.format(date));
System.out.println(sd.format(date1));
M代表月份 m代表分钟数 h代表A.M/P.M12小时制 H代表24小时制
使用System.out.printf()也可以输出格式化日期,以%t加上制表符
//c的使用
System.out.printf("全部日期和时间信息:%tc%n",date);
//f的使用
System.out.printf("年-月-日格式:%tF%n",date);
//d的使用
System.out.printf("月/日/年格式:%tD%n",date);
//r的使用
System.out.printf("HH:MM:SS PM格式(12时制):%tr%n",date);
//t的使用
System.out.printf("HH:MM:SS格式(24时制):%tT%n",date);
//R的使用
System.out.printf("HH:MM格式(24时制):%tR%n",date);
sleep():
使当前线程进入停滞状态,单位为毫秒
try {
System.out.println(new Date( ) + "\n");
Thread.sleep(1000*3); // 休眠3秒
System.out.println(new Date( ) + "\n");
} catch (Exception e){
System.out.println("Got an exception!");
}
测量时间间隔例子
currentTimeMillis():返回当前计算机时间和GMT时间(格林威治时间)1970年1月1号0时0分0秒所差的毫秒数。
try{
long start = System.currentTimeMillis();
System.out.println(new Date( )+"\n");
Thread.sleep(5*60*10);
System.out.println(new Date( )+"\n");
long end = System.currentTimeMillis();
long diff = end - start;
System.out.printf("时间差为%d毫秒",diff);
}catch (Exception e){
System.out.println("Got an exception!");
}