Java中的日期时间类详解(Date、DateFormat、Calendar)
在Java中,Date
、DateFormat
和Calendar
都是用来处理日期和时间的类。
Date
类:- 表示特定的瞬时时间点,精确到毫秒。
- 构造方法:
Date()
创建一个表示创建时间的对象,Date(long date)
根据给定的毫秒值创建一个日期对象。 - 常用方法:
boolean after(Date when)
测试此日期是否在指定日期之后,boolean before(Date when)
测试此日期是否在指定日期之前,long getTime()
返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数。
DateFormat
类:- 是日期和时间格式化子类的抽象类,用于格式化和解析日期或时间。
- 常用方法:
String format(Date date)
将日期格式化为日期/时间字符串,Date parse(String source)
将字符串解析为日期。
Calendar
类:- 是一个抽象类,用于表示日期和时间信息,提供了许多操作日期时间字段的方法。
- 常用方法:
int get(int field)
获取给定日历字段的值,void set(int field, int value)
将给定日历字段设置为指定值,Date getTime()
返回一个表示此 Calendar 时间值(从历元至今的毫秒偏移量)的 Date 对象。
示例代码:
import java.util.Date;
import java.text.SimpleDateFormat;
import java.util.Calendar;
public class DateTimeExample {
public static void main(String[] args) {
// 使用Date类
Date date = new Date(); // 当前时间
System.out.println(date.toString());
// 使用DateFormat类
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String formattedDate = sdf.format(date);
System.out.println(formattedDate);
// 使用Calendar类
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);
System.out.println("Year: " + year + ", Month: " + month + ", Day: " + day);
}
}
这段代码展示了如何使用Date
、SimpleDateFormat
和Calendar
类来获取当前时间,格式化日期,以及获取日期字段。
评论已关闭