欢迎访问宙启技术站
智能推送

Java中存在哪些常用的日期时间函数?

发布时间:2023-06-01 10:11:17

在Java中,有许多常用的日期时间函数操作,其中最常见的包括以下几个方面:

1. Date 类型

Java中最常见的日期类型就是 Date 类型,它的构造函数可以接受一个日期毫秒数值,或将当前日期时间作为默认值。使用 Date 类型可以进行日期格式化和日期比较操作,例如:

// 构造当前日期对象

Date today = new Date();

// 格式化今天的日期

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");

String todayString = dateFormat.format(today);

System.out.println("今天是:" + todayString);

// 获取明天的日期

long tomorrowMills = today.getTime() + (24 * 60 * 60 * 1000);

Date tomorrow = new Date(tomorrowMills);

String tomorrowString = dateFormat.format(tomorrow);

System.out.println("明天是:" + tomorrowString);

// 比较今天和明天的大小

if(today.before(tomorrow)){

    System.out.println("今天比明天早");

}else if(today.after(tomorrow)){

    System.out.println("今天比明天晚");

}else{

    System.out.println("今天和明天一样");

}

2. Calendar 类型

Calendar 类型是一个能够处理日期和时间的接口,它是一个抽象类,提供了一些静态方法可以获取具体实现类(例如GregorianCalendar),提供了大量的日期时间操作方法,例如:

// 获取当前实例

Calendar calendar = Calendar.getInstance();

// 设置月份为3月

calendar.set(Calendar.MONTH, 2);

// 获取日期的年、月、日、时、分、秒信息

int year = calendar.get(Calendar.YEAR);

int month = calendar.get(Calendar.MONTH) + 1;

int day = calendar.get(Calendar.DATE);

int hour = calendar.get(Calendar.HOUR_OF_DAY);

int minute = calendar.get(Calendar.MINUTE);

int second = calendar.get(Calendar.SECOND);

// 转换日期类型为字符串类型

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

String dateString = dateFormat.format(calendar.getTime());

3. SimpleDateFormat 类型

SimpleDateFormat 类型是一个可以格式化日期时间的类,它可以将Date类型或Calendar类型的日期时间转换为指定格式的字符串类型,例如:

// 构造当前日期对象

Date date = new Date();

// 定义日期格式化器

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");

// 格式化当前日期对象

String dateString = dateFormat.format(date);

// 输出格式化后的日期

System.out.println("当前日期为:" + dateString);

4. DateUtils 类型

DateUtils 类型是一个提供日期时间操作方法的工具类,它提供了一些便捷的方法来对日期时间进行操作,例如:

// 获取当前日期

Date currentDate = new Date();

// 获取当前时间的60秒之后的时间对象

Date date60SecsLater = DateUtils.addSeconds(currentDate, 60);

// 获取当前日期的10天之后的日期对象

Date date10DaysLater = DateUtils.addDays(currentDate, 10);

// 比较两个日期的大小

int diff = DateUtils.compareTo(currentDate, date60SecsLater);

// 判断两个日期是否相等

boolean isEqual = DateUtils.isSameDay(currentDate, date60SecsLater);

总体来说,在 Java 中,有很多经典的日期时间函数可供使用,以上只是最常见的。对于它们的使用,还得根据具体的需要来使用。