Calendar 能够是日期在毫秒和日期间相互转化,异常好用
package com.fbank.dis_common.utils; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * Created by pactera on 2019/1/3. */ public class TestCalendar { public static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); public static SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd"); public static void main(String[] args) { Calendar now = Calendar.getInstance();//使用默认时区和语言环境获得一个日历。 System.out.println("当前时间" + sdf.format(now.getTime())); now.add(Calendar.HOUR, 1);//当前时间2小时后的时间 Date time1 = now.getTime(); System.out.println("1小时后" + sdf.format(time1)); Calendar now2 = Calendar.getInstance(); now2.add(Calendar.DAY_OF_WEEK, 1); System.out.println("1天后" + sdf.format(now2.getTime())); Calendar now6 = Calendar.getInstance(); now6.add(Calendar.DAY_OF_WEEK_IN_MONTH, 1); System.out.println("1星期后" + sdf.format(now6.getTime())); Calendar now3 = Calendar.getInstance(); now3.add(Calendar.MONTH, 1); System.out.println("1月后" + sdf.format(now3.getTime())); //比较时间大小:1大于; 0等于; -1小于 int boo = now3.compareTo(now2); System.out.println(boo); //获取当前时间的毫秒显示 long timeInMillis = Calendar.getInstance().getTimeInMillis(); System.out.println("当前时间的毫秒" + timeInMillis); //将毫秒转换为日期 Calendar now4 = Calendar.getInstance(); now4.setTimeInMillis(timeInMillis + 24 * 60 * 60 * 1000); System.out.println("毫秒转换为日期" + sdf.format(now4.getTime())); //日期转换为毫秒 Calendar now5 = Calendar.getInstance(); now5.setTime(now4.getTime()); System.out.println("日期转换为毫秒" + now5.getTimeInMillis()); //获取昨天的日期yyyy-MM-dd,逻辑:处理时间毫秒 Calendar now7 = Calendar.getInstance(); now7.setTimeInMillis(now7.getTimeInMillis() - 24 * 60 * 60 * 1000); System.out.println("前一天的日期" + sdf1.format(now7.getTime())); now7.setTimeInMillis(now7.getTimeInMillis() + 24 * 60 * 60 * 1000 * 2); System.out.println("后一天的日期" + sdf1.format(now7.getTime())); } }