ok了家人们今天学习了Date类和simpleDateformat类,话不多说我们一起看看吧
一.Date类
类
java.util.Date
表示特定的瞬间
(
日期和时间
)
,精确到毫秒。
1.2 Date类的构造方法
- public Date(): 用来创建当前系统时间对应的日期对象。
-
public Date(long date) :用来创建以标准基准时间为基准指定偏移毫秒数对应的日期对象
标准基准时间:
0
时区
: 1970
年
01
月
01
日
00:00:00
;
东八区
: 1970
年
01
月
01
日
08:00:00
public class DemoTest {
public static void main(String[] args) {
//创建一个当前系统时间的日期对象
Date date01=new Date();
System.out.println(date01);//Wed Jul 03 09:18:23 CST 2024
System.out.println("-------------- ");
//创建一个与标准基准时间偏移1秒的日期对象
Date date02=new Date(1000);
System.out.println(date02);//Thu Jan 01 08:00:01 CST 1970
}
}
1.3 Date类的常用方法
- public long getTime() 获取当前日期对象距离标准基准时间的毫秒值。
-
public void setTime(long time) 设置当前日期对象距离标准基准时间的毫秒值。也就意味着改变了当前日期对象。
-
public boolean after(Date when) 测试此日期是否在指定日期之后。public boolean before(Date when) 测试此日期是否
在指定日期之前。
public class
DemoTest
{
public static
void
main
(
String
[]
args
) {
//
创建一个当前系统时间的日期对象
Date date01
=
new
Date
();
System
.
out
.
println
(
date01
);
//Wed Jul 03 09:18:23 CST 2024
System
.
out
.
println
(
"------------------------"
);
//
创建一个与标准基准时间偏移
1
秒的日期对象
Date date02
=
new
Date
(
1000
);
System
.
out
.
println
(
date02
);
//Thu Jan 01 08:00:01 CST 1970
System
.
out
.
println
(
"------------------------"
);
//public long getTime()
获取当前日期对象距离标准基准时间的毫秒值。
System
.
out
.
println
(
date01
.
getTime
());
//1719972679512
System
.
out
.
println
(
date02
.
getTime
());
//1000
System
.
out
.
println
(
"------------------------"
);
//public void setTime(long time)
设置当前日期对象距离标准基准时间的毫秒值。也就意味着改
变了当前日期对象。
date01
.
setTime
(
2000
);
date02
.
setTime
(
3000
);
System
.
out
.
println
(
date01
);
//Thu Jan 01 08:00:02 CST 1970
System
.
out
.
println
(
date02
);
//Thu Jan 01 08:00:03 CST 1970
System
.
out
.
println
(
"------------------------"
);
//public boolean after(Date when) 测试此日期是否在指定日期之后。
//public boolean before(Date when) 测试此日期是否在指定日期之前。
System
.
out
.
println
(
date01
.
before
(
date02
));
/ /true
System
.
out
.
println
(
date01
.
after
(
date02
));
// false
}
}
二.DateFormat类
2.1 DateFormat类的概述
java.text.DateFormat
是日期
/
时间格式化子类的抽象
类,我们通过这个类可以帮我们完成日期和文本之间的
转换
,
也就是可以在
Date
对象与
String
对象之间进行来回
转换。
格式化
:按照指定的格式,把
Date
对象转换为
String
对
象。
解析
:按照指定的格式,把
String
对象转换为
Date
对
象。
由于
DateFormat
为抽象类,不能直接使用,所以需要常
用的子类
java.text.SimpleDateFormat
public SimpleDateFormat(String pattern)
:用给定
的模式和默认语言环境的日期格式符号构造。参数
pattern
是一个字符串,用来指定日期格式。
格式规则
:
常用的日期格式
: yyyy
年
MM
月
dd
日
HH
时
mm
分
ss
秒
常用的日期格式
: yyyy-MM-dd HH:mm:ss
2.2 DateFormat类的常用方法
public String format(Date date)
:将
Date
对象格式化为字符串。
public Date parse(String source)
:将字符串解析为
Date
对象。
public class
DemoTest
{
public static
void
main
(
String
[]
args
)
throws
ParseException
{
//
创建日期格式化对象
,
指定日期格式
SimpleDateFormat sdf
=
new
SimpleDateFormat
(
"yyyy
年MM月
dd
日
HH
时
mm
分
ss
秒
"
);
//
格式化
: Date---->String
Date date01
=
new
Date
();
System
.
out
.
println
(
date01
);
String
strDate
=
sdf
.
format
(
date01
);
System
.
out
.
println
(
strDate
);
System
.
out
.
println
(
"--------------------"
);
//
解析
: String---> Date
//
创建
Scanner
对象
,
获取键盘录入的出生日期
Scanner sc
=
new
Scanner
(
System
.
in
);
System
.
out
.
println
(
"
请输入出生日期
:"
);
String
birthday
=
sc
.
nextLine
();
//
把字符串的出生日期转化为
Date
类型
Date date02
=
sdf
.
parse
(
birthday
);
System
.
out
.
println
(
date02
);
}
}
ok了家人们明天见。