两者区别及用法见:http://www.cnblogs.com/springcsc/archive/2009/12/03/1616347.html
calendar要比Date更强大,用于对日期时间的运算,转换等操作。
public static void main(String[] args) {
Calendar calendar=Calendar.getInstance();
//如果不设置日期等元素,默认是当前时间
// calendar.set(Calendar.MONTH, 4);
// calendar.set(Calendar.DAY_OF_MONTH,25);
// calendar.set(Calendar.HOUR_OF_DAY, 0);
// calendar.set(Calendar.SECOND, 0);
// calendar.set(Calendar.MINUTE, 0);
// calendar.set(Calendar.MILLISECOND, 0);
// 显示年份
int year= calendar.get(Calendar.YEAR);
System.out.println(year+"年");
//显示月份
int month= calendar.get(Calendar.MONTH);
System.out.println(month+1+"月");
//显示日
int day=calendar.get(Calendar.DAY_OF_MONTH);
System.out.println(day+"日");
System.out.println(calendar.getTime());
SimpleDateFormat myFormatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String formatDate = myFormatter.format(calendar.getTime());
System.out.println(formatDate);
int math=(int)((calendar.getTime().getTime())/1000);
System.out.println("unix时间戳:"+math);
Date date=new Date();
SimpleDateFormat myFormatter1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String formatDate1 = myFormatter.format(date);
System.out.println(formatDate1);
显示为
2017年
6月
7日
Wed Jun 07 14:51:30 CST 2017
2017-06-07 14:51:30
unix时间戳:1496818290
2017-06-07 14:51:30
tip1: unix时间戳是1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒
tip2:闰秒是“原子时间”和“世界时间”由于地球自转长时间缓慢变化及地球区域分布不均匀和潮汐等原因,引起的妹几年会误差0.9秒,为了统一世界时间所采取的协调的时间。