Date的几个用法(姑且成为用法吧)
-
SimpleDateFormat
格式化
1 SimpleDateFormat sdf = new SimpleDateFormat();
2 Date date = new Date();
3 System.out.println(date);
4 String format = sdf.format(date);
5 System.out.println(format);
- Line 3的结果是Mon Dec 06 08:45:40 CST 2021
- Line5的结果是21-12-6 上午8:45
解析
sdf.parse(str);
- 后面跟的应该是一个特定格式的字符串。
- 格式例子:21-12-6 上午8:45
调用有参的SimpleDateFormat设置格式
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyyy.MMMMM.dd GGG hh:mm aaa");
Date date1 = new Date();
String format1 = sdf1.format(date1);
System.out.println(format1);
- 输出的结果为 02021.十二月.06 公元 09:02 上午
- 一般习惯用yyyy-MM(大写)-dd hh:mm:ss
- 修改后的上面输出结果为2021-12-06 09:04:20
- 同理,解析的时候也需要满足构造器的形参格式!
将Date转换为SQL包下的Date
//将Date转换为SQL的date
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd");
String format2 = sdf2.format(date1);
Date date2 = sdf2.parse(format2);
java.sql.Date date3 = new java.sql.Date(date2.getTime());
System.out.println(date3);
Calendar---日历类
- Calendar是一个抽象类,无法直接创建对象
Calendar方法//Calendar //方式一 创建子类的对象 GregorianCalendar gregorianCalendar = new GregorianCalendar(); //方式二 调用静态方法 Calendar instance = Calendar.getInstance();
//Get int i = calendar.get(calendar.DAY_OF_MONTH); System.out.println(i); //Calendar calendar = Calendar.getInstance(); int i2 = calendar.get(calendar.DAY_OF_YEAR); System.out.println(i2);
//getTime Date date5 = calendar.getTime(); System.out.println(date5); //setTime //是可变的!
Date date = new Date(); calendar.setTime(date);