package org.date;
import java.time.DayOfWeek;
import java.time.LocalDate;
import java.time.Month;
import java.time.temporal.ChronoField;
/**
* TODO : JAVA8 Date 操作详解
* @author bilaisheng
* @date 2017年9月3日 下午9:20:25
* @email 878799579@qq.com
*/
public class DateTest {
/**
* JAVA1.0中 Date 和JAVA1.1中的Calendar 在设计中由于诸多问题和设计缺陷
* 导致使用这些方法写出的代码容易出错。比如,月份依旧是从0开始计算
* 不过,至少Calendar类拿掉了由1990年开始计算年份这一设计
* DateFormat方法只有在Date类里有
* DateFormat不是线程安全的。意味着,如果两个线程尝试同时使用同一个formatter解析日期
* 你可能会得到无法预期的结果。
*/
@SuppressWarnings("unused")
public static void main(String[] args) {
LocalDate today = LocalDate.now();
LocalDate date = LocalDate.of(2017, 9, 1);
int year = date.getYear();
Month month = date.getMonth();
int day = date.getDayOfMonth();
DayOfWeek dow = date.getDayOfWeek();
int len = date.lengthOfMonth();
boolean leap = date.isLeapYear();
System.out.println(today);
int tyear = date.get(ChronoField.YEAR);
int tmonth = date.get(ChronoField.MONTH_OF_YEAR);
int tday = date.get(ChronoField.DAY_OF_MONTH);
}
}