欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

荐 Java 日期时间相关类的使用

程序员文章站 2022-07-05 10:58:03
一、Date类1.Date类概述2.Date类常用的方法二、Calendar类1.Calendar类概述2.Calendar常用方法三、DateFormat类1.DateFormat类概述2.日期和时间格式3.[Simple]DateFormat类常用方法...


Date 类用于表示时间和日期,由于开发时并没有考虑国际化,所以后来又新设计了 Calendar 类和 DateFormat 类。

一、Date类

1.Date类概述

  • Date 类表示特定的瞬间,精确到毫秒。
  • Date 类是通过时间原点1970.01.01 00:00:00:000) 和 毫秒值long类型)来计算时间的。
  • Date 类来自 java.util 包,使用时需要导入包。

2.Date类常用的方法

构造方法

public Date()
分配 Date 对象并初始化此对象,以表示分配它的时间(精确到毫秒)。

//打印当前系统日期
Date d = new Date();
System.out.println(d);

public Date(long date)
分配 Date 对象并初始化此对象,以表示自从标准基准时间(称为“历元(epoch)”,即 1970 年 1 月 1 日 00:00:00 GMT)以来的指定毫秒数。

//打印从标准基准时间以后的指定毫秒数的对应时间。
Date d = new Date(0L);
System.out.println(d);

成员方法

long getTime()
返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数。

//打印从基准时间到当前时间的毫秒数
Date d = new Date();
System.out.println(d.getTime());

二、Calendar类

1.Calendar类概述

  • Calendar 类是一个抽象类。
  • 提供了与日历相关的字段。
  • Calendar 的 getInstance 方法返回一个 Calendar 对象,其日历字段已由当前日期和时间初始化。

2.Calendar常用方法

先看一下常用的日历字段常量
荐
                                                        Java 日期时间相关类的使用

成员方法

int get(int field)
参数:传递特定的日历字段。
返回值:返回给定日历字段的值。

//使用getInstance()创建对象
Calendar c = Calendar.getInstance();
//获取当前年份
int year = c.get(Calendar.YEAR);
//获取当前月份(西方月份从 0 开始,因此需要 + 1)
int month = c.get(Calendar.MONTH) + 1;
//获取当前日期
int date = c.get(Calendar.DATE);

System.out.println(year+"年"+month+"月"+date+"日");

void set(int field, int value)
参数:传递日历字段。
           给指定字段传值

//使用getInstance()创建对象
Calendar c = Calendar.getInstance();
//单独设置年月日
c.set(Calendar.YEAR,2000);
c.set(Calendar.MONTH,02);
c.set(Calendar.DATE,20);
//可以同时设置 年、月、日
c.set(2200,03,05);
//设置完之后可用get方法取出,不在演示

abstract void add(int field, int amount)
参数:传递日历字段。
           增减或减少的值(正数增加,负数减少)

//使用getInstance()创建对象
Calendar c = Calendar.getInstance();
//减少指定年份
c.add(Calendar.YEAR,-3);
//增加指定月份
c.add(Calendar.MONTH,3);

Date getTime()
返回一个表示此 Calendar 时间值(从历元至现在的毫秒偏移量)的 Date 对象。

//创建日历对象
Calendar c = Calendar.getInstance();
//调用getTime方法
Date date = c.getTime();
System.out.println(date);

三、DateFormat类

1.DateFormat类概述

  • DateFormat 类是日期/时间格式化子类的抽象类(必须使用它的子类SimpleDateFormat类来创建对象)。
  • DateFormat 类可以完成日期和文本之间的转换
  • DateFarmat 类来自 java.text 包,使用时需要导入包。

2.日期和时间格式

稍微了解,在下面的代码中会有具体的使用

荐
                                                        Java 日期时间相关类的使用
荐
                                                        Java 日期时间相关类的使用

3.[Simple]DateFormat类常用方法

SimpleDateFormat的构造方法

SimpleDateFormat(String pattern)
用给定的模式和默认语言环境的日期格式符号构造 SimpleDateFormat。

//规定需要转换的日期格式
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");

DateFormat的成员方法

String format(Date date)
将一个 Date 格式化为日期/时间字符串。

//规定需要转换的日期格式
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
//获取当前日期
Date d = new Date();
//日期转文本
String str = sdf.format(d);
System.out.println(str);

Date parse(String source)
从给定字符串的开始解析文本,以生成一个日期

//规定需要转换的日期格式
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
//文本转日期
Date date = sdf.parse("2020年07月15日 19时04分40秒");
System.out.println(date);

本文地址:https://blog.csdn.net/weixin_44580492/article/details/107367202