Date类
构造函数 Date() // 空参
Date(long msec) // 用毫秒值初始化日期对象的值
方法 long getTime() // 得到日期对象的毫秒值
void setTime(long msec) // 用毫秒值修改日期对象
Date date1 = new Date(); // Fri Aug 04 21:58:31 CST 2017 Date date2 = new Date(System.currentTimeMillis()); // 结果同上 long msec = date1.getTime(); // 1501901264272 long m = System.currentTimeMillis(); date1.setTime(0);
SimpleDateFormat类
构造函数 SimpleDateFormat(String pattern)
获取当前日期格式化输出
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm"); String dateStr = sdf.format(new Date()); 2017/08/05 10:54
// 构造函数中的模式也可写成 yyyy年MM月dd日 HH时mm分ss秒等,中间分隔的可以随便写,但英语字母要按照一定的规则
将获取的字符串转换成Date对象
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm"); Date date = sdf.parse("2017/8/4 22:19"); // Fri Aug 04 22:19:00 CST 2017
// parse()方法中的模式严格匹配构造函数中的模式
Calendar getCalendar() // 返回Calendar对象,但必须先format或者parse
Calendar 类
Calendar c = Calendar.getInstance(); // 获取子类对象 // YEAR 年 MONTH 月,值为[0,11] DAY_OF_MONTH 日 DAY_OF_WEEK [0,6] 0 是星期日 int year = c.get(Calendar.YEAR); // 获取 字段值 c.set(Calendar.YEAR, 2016); // 设置字段值 c.add(Calendar.YEAR, 1); // 日历某个字段偏移value Date date = c.getTime(); // equal to new Date() long s = c.getTimeInMillis(); // equal to System.currentTimeMillis();
下面是日期转换图