Java中常用日期函数使用总结
1. java.util.Date
java.util.Date是Java中最原始的日期类。它提供了一种跨平台的存储日期和时间的方式,并且表示的是相对于GMT(格林威治时间)的时间。
使用方法:
获取当前时间:
Date date = new Date();
获取时间戳:
long timeStamp = date.getTime();
将时间戳转换为Date对象:
Date date = new Date(timeStamp);
2. java.util.Calendar
java.util.Calendar是Java中日期的另一个核心类,它提供了丰富的日期计算方法。
使用方法:
获取当前时间:
Calendar calendar = Calendar.getInstance();
获取指定时间的特定部分:
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH) + 1; // 月份是从0开始算的
int day = calendar.get(Calendar.DAY_OF_MONTH);
int hour = calendar.get(Calendar.HOUR_OF_DAY);
int minute = calendar.get(Calendar.MINUTE);
int second = calendar.get(Calendar.SECOND);
设置指定时间的特定部分:
calendar.set(Calendar.YEAR, 2022);
calendar.set(Calendar.MONTH, Calendar.JUNE);
calendar.set(Calendar.DAY_OF_MONTH, 1);
3. java.time.LocalDate、java.time.LocalTime、java.time.LocalDateTime
这是Java 8引入的一组全新日期时间类,它们提供了更好的可读性、更简洁的API和线程安全的实现。
使用方法:
获取当前日期:
LocalDate date = LocalDate.now();
获取当前时间:
LocalTime time = LocalTime.now();
获取当前日期时间:
LocalDateTime dateTime = LocalDateTime.now();
获取指定日期时间的特定部分:
int year = dateTime.getYear();
int month = dateTime.getMonthValue(); // 月份是从1开始的
int day = dateTime.getDayOfMonth();
int hour = dateTime.getHour();
int minute = dateTime.getMinute();
int second = dateTime.getSecond();
设置指定日期时间的特定部分:
LocalDateTime dateTime2 = dateTime.withYear(2022).withMonth(6).withDayOfMonth(1);
4. java.text.SimpleDateFormat
SimpleDateFormat类是一个可以使用指定模式格式化和解析日期时间的类。
使用方法:
将Date对象格式化为字符串:
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
String str = sdf.format(date);
将字符串解析为Date对象:
sdf.parse(str);
总结
以上介绍了Java中常用日期函数的使用方法,从最原始的java.util.Date到Java 8中使用频率较高的java.time包中的日期时间类,每个类都有其独特的优点和适用场景。在实际开发过程中,根据具体业务需求选择合适的日期时间类可以提高开发效率和代码可读性。
