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

Java常用的日期时间函数及用法详解

发布时间:2023-06-13 08:52:56

Java提供的日期时间函数是开发中经常使用的一部分,它们可以帮助我们更好地处理和操作日期和时间。以下是Java中常用的日期时间函数及用法的详细解释。

1. Date

Date是Java SE中用于表示日期和时间的类,它提供了许多方法,如getTime()和setTime()等,让我们设置和获取日期和时间的值。Date类的使用方法如下:

import java.util.Date;

Date date = new Date();   // 创建一个新的Date对象
System.out.println(date);    // 输出当前日期和时间

2. SimpleDateFormat

SimpleDateFormat是Java中用于格式化日期和时间的类。它可以将一个Date对象转换成指定格式的字符串,或将一个字符串转换成对应的Date对象。它的使用方法如下:

import java.text.SimpleDateFormat;
import java.util.Date;

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  // 定义日期时间格式
Date date = new Date();
String strDate = sdf.format(date);  // 将Date对象格式化为字符串
System.out.println(strDate);   // 输出格式化后的字符串

String str = "2021-08-30 19:30:00";
Date date1 = sdf.parse(str);    // 将字符串转换成Date对象
System.out.println(date1);     // 输出转换后的Date对象

3. Calendar

Calendar是Java中用于操作日期和时间的类,它可以获取当前日期和时间,或者将一个Date对象转换成Calendar对象。可以使用Calendar实现时间加减、日期比较等功能。它的使用方法如下:

import java.util.Calendar;
import java.util.Date;

Calendar c1 = Calendar.getInstance();   // 获取当前日期和时间
System.out.println(c1.getTime());

Date date = new Date();
Calendar c2 = Calendar.getInstance();
c2.setTime(date);  // 将Date对象转换成Calendar对象
System.out.println(c2.getTime());

c2.add(Calendar.DAY_OF_MONTH, 1);  // 将日期加1天
System.out.println(c2.getTime());

System.out.println(c2.after(c1));   // 判断c2是否在c1之后
System.out.println(c2.before(c1));  // 判断c2是否在c1之前

4. LocalDateTime

LocalDateTime是Java 8中新增的日期和时间类,它可以更方便地处理日期和时间。LocalDateTime提供了许多方法,如now()和plusHours()等,让我们更轻松地操作日期和时间。它的使用方法如下:

import java.time.LocalDateTime;

LocalDateTime dateTime1 = LocalDateTime.now();  // 获取当前日期和时间
System.out.println(dateTime1);

LocalDateTime dateTime2 = LocalDateTime.of(2021, 8, 30, 19, 30, 0);  // 获取指定日期和时间
System.out.println(dateTime2);

LocalDateTime dateTime3 = dateTime2.plusHours(2);  // 将时间加2小时
System.out.println(dateTime3);

System.out.println(dateTime2.isAfter(dateTime1));  // 判断dateTime2是否在dateTime1之后
System.out.println(dateTime2.isBefore(dateTime1)); // 判断dateTime2是否在dateTime1之前

5. Period

Period是Java中用于计算两个日期之间的差距的类,它可以计算两个日期相差的年、月、日等。它的使用方法如下:

import java.time.LocalDate;
import java.time.Period;

LocalDate date1 = LocalDate.of(2020, 1, 1);
LocalDate date2 = LocalDate.of(2021, 8, 30);

Period period = Period.between(date1, date2);  // 计算date1和date2之间的差距
System.out.println(period.getYears() + "年" + period.getMonths() + "月" + period.getDays() + "日");

6. Duration

Duration是Java中用于计算两个时间之间的差距的类,它可以计算两个时间相差的小时、分钟、秒等。它的使用方法如下:

import java.time.Duration;
import java.time.LocalTime;

LocalTime time1 = LocalTime.of(10, 0, 0);
LocalTime time2 = LocalTime.of(12, 30, 0);

Duration duration = Duration.between(time1, time2);   // 计算time1和time2之间的差距
System.out.println(duration.toHours() + "小时" + duration.toMinutes() % 60 + "分钟" + duration.getSeconds() % 60 + "秒");

以上就是Java常用的日期时间函数及用法的详细解释。这些函数可以帮助我们更好地处理和操作日期和时间,从而更高效地完成开发工作。