Java Date类,DateFormat类,Calendar类用法。

1、Date类

java.util.Date:表示日期和时间的类
类Date表示特定的瞬间,精确到毫秒。
毫秒:千分之一秒 1000毫秒= 1秒

毫秒值的作用:可以对时间和日期进行计算。
例如:可以对时间和日期进行计算:
2088-01-03到2099-01-01有多少天
可以把日期转换为毫秒进行计算,计算完毕,再把毫秒转换为日期。

2、DateFormat类

java.text.DateFormat :是日期/时间格式化子类的抽象类
作用:
格式化(也就是日期 —> 文本)、解析(文本—>日期)
成员方法:
String format(Date date) 按照指定的模式,把Date日期,格式化为符合模式的字符串
Date parse(String source) 把符合模式的字符串,解析为Date日期。
DateFormat类是一个抽象类,无法直接创建对象使用,可以使用DateFormat类的子类。
java.text.SimpleDateFormat extends DateFormat
构造方法:
SimpleDateFormat(String pattern) 用给定的模式和默认语言环境的日期格式符号构造 SimpleDateFormat。
参数:String pattern:传递指定的模式
模式:区分大小写的
y 年
M 月
d 天
H 时
m 分
s 秒
写对应的模式,会把模式替换为对应的日期和时间。
例如:
“yyyy-MM-dd HH:mm:ss”
“yyyy年MM月dd日 HH时mm分ss秒”
注意:模式中的字母不能更改,连接模式的符合可以更改。
使用DateFormat类中的方法format把日期格式转化为文本。
使用步骤:
1、创建SimpleDateFormat对象,构造方法中传递指定的模式
2、调用SimpleDateFormat对象中的方法format,按照构造方法中指定的模式,把Date日期格式化为符合模式的字符串(文本)。

public static void demo01() {
    
    
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    Date date = new Date();
    String text = sdf.format(date);
    System.out.println(date);
    System.out.println(text);
}

使用DateFormat类中的方法parse,把文本解析为日期。
1、创建SimpleDateFormat对象,构造方法中传递指定的模式
2、调用SimpleDateFormat对象中的方法parse,把符合构造方法中模式的字符串,解析为Date日期。
注意:parse方法声明了一个异常叫parseException解析异常,如果我们字符串和构造方法中的模式不一样,程序就会抛出此异常。调用一个抛出了异常的方法就必须处理这个异常。要么throws继续声明抛出这个异常,要么try…catch自己处理这个异常。

public static void demo02() throws ParseException {
    
    
    SimpleDateFormat s = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    Date date = s.parse("2020-10-29 10:19:50");
    System.out.println(date);
}

3、Calendar类

java.util.Calendar是日历类,是一个抽象类,在Date后出现,替换掉了许多Date的方法。该类将所有可能用到的时间信息封装为静态成员变量,方便获取。日历类就是方便获取各个时间属性的。
里面提供了很多操作日历字段的方法(YEAR、MONTH、DAY_OF_MONTH、HOUR)
Calendar类无法直接对象使用,里边有一个静态方法getInstance(); 该方法返回了Calendar类的子类对象。
static Calendar getInstance() 使用默认市区和语言环境获得一个日历。
Calendar类的成员方法:
–public int get (int field):返回给定日历字段的值
–public void set(int field, int value):将给定的日历字段设置为给定值
–public abstract void add(int field, int amount):根据日历的规则,为给定的日历字段添加或减去指定的时间量。
–public Date getTime():返回一个表示此Calendar时间值的Date对象。
成员方法的参数:
int field:日历类的字段,可以使用Calendar类的静态成员变量获取。
public static final int YEAR = 1; 年
public static final int MONTH = 2 月
public static final int DATE = 5 月中的某一天
public static final int DAY_OF_MONTH = 5 月中的某一天
public static final int HOUR = 12 时
public static final int MINUTE = 23 分
public static final int SECOND = 21 秒

猜你喜欢

转载自blog.csdn.net/Gaoju12138/article/details/109347598