Java中的日期相关API主要有三大类:java.util.Date、java.sql.Date和java.time包。
1.java.util.Date
java.util.Date是Java中最常用的日期API,它提供了许多方法来处理日期,如获取日期、设置日期、比较日期等。
1.1 获取当前日期
Date date = new Date();
1.2 设置日期
Date date = new Date(long millis);
其中,millis参数是从1970年1月1日0时0分0秒开始经过的毫秒数。
1.3 获取毫秒数
long millis = date.getTime();
1.4 比较日期
int result = date1.compareTo(date2);
其中,result的值有三种可能:
- -1:date1在date2之前
- 0:date1等于date2
- 1:date1在date2之后
2.java.sql.Date
java.sql.Date是Java中用于操作数据库的日期API,它主要用于操作数据库中的日期数据,提供了一些基本的操作方法,如获取日期、设置日期等。
2.1 获取当前日期
java.sql.Date date = new java.sql.Date(System.currentTimeMillis());
2.2 设置日期
java.sql.Date date = new java.sql.Date(long millis);
其中,millis参数是从1970年1月1日0时0分0秒开始经过的毫秒数。
2.3 比较日期
int result = date1.compareTo(date2);
其中,result的值有三种可能:
- -1:date1在date2之前
- 0:date1等于date2
- 1:date1在date2之后
3.java.time包
java.time包是Java 8引入的新的日期API,它提供了更多的操作方法,可以更精确的操作日期,如获取当前时间、计算时间差、格式化日期等。
3.1 获取当前日期
LocalDate date = LocalDate.now();
3.2 计算时间差
LocalDate date1 = LocalDate.now(); LocalDate date2 = LocalDate.of(2020, 8, 1); Period period = Period.between(date1, date2);
3.3 格式化日期
LocalDate date = LocalDate.now(); DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); String strDate = date.format(formatter);