Date类,查看API文档发现,很多构造器,方法都已经是deprecated,都已经不推荐使用了的,但是还是能满足基本的需求(获取当前时间)的。
构造器 Date() 生成一个代表 当前日期时间的Date对象。该构造器在底层调用System.currentTimeMillis()获得long整数作为日期参数。
关于日期,还有一个相关的日期格式化类:SimpleDateFormat。
SimpleDateFormat是DateFormat类的子类,SimpleDateFormat类是简单的 日期格式器,相对来说DateFormat能实现的功能更多,但是相对于简单开发来说,用SimpleDateFormat类更方便快捷。
SimpleDateFormat类的使用如下:
//语法:
//SimpleDateFormat simpleDateFormat = new SimpleDateFormat(pattern)
//创建SimpleDateFormat对象,并设定日期格式
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
//用new Date()获取当前时间,然后用SimpleDateFormate的format()方法按照上面设定的日期格式进行格式化
String today = simpleDateFormat.format(new Date());
//下面将输出:2017-08-11
System.out.println(today);
上方的参数pattern是字符串类型,用来设置格式,API文档中给出的格式有:
Date and Time Pattern | Result |
---|---|
"yyyy.MM.dd G 'at' HH:mm:ss z" | 2001.07.04 AD at 12:08:56 PDT |
"EEE, MMM d, ''yy" | Wed, Jul 4, '01 |
"h:mm a" | 12:08 PM |
"hh 'o''clock' a, zzzz" | 12 o'clock PM, Pacific Daylight Time |
"K:mm a, z" | 0:08 PM, PDT |
"yyyyy.MMMMM.dd GGG hh:mm aaa" | 02001.July.04 AD 12:08 PM |
"EEE, d MMM yyyy HH:mm:ss Z" | Wed, 4 Jul 2001 12:08:56 -0700 |
"yyMMddHHmmssZ" | 010704120856-0700 |
"yyyy-MM-dd'T'HH:mm:ss.SSSZ" | 2001-07-04T12:08:56.235-0700 |
"yyyy-MM-dd'T'HH:mm:ss.SSSXXX" | 2001-07-04T12:08:56.235-07:00 |
"YYYY-'W'ww-u" | 2001-W27-3 |
关于日期类,还有一个java.time包;
java.time包里面的常用类有如下几个:
LocalDate:该类代表不带时区的日期,例如:2017-08-11,该类提供了静态的now()方法来获取当前日期;
LocalTIme:该类代表不带时区的时间,例如:17:11:30,该类提供了静态的now()方法来获取当前时间;
LocalDateTime:该类代表 不带时区的日期、时间,例如2017-08-11T10:21:20,该类同样提供类静态的now()方法来获取当前日期,时间;