JDK1.7及之前日期时间相关类:Date类、SimpleDateFormat类、Calender类

这篇博客介绍了JDK1.7中日期时间的使用,包括Date类、SimpleDateFormat类和Calendar类。重点讲解了如何初始化、格式化和解析日期,以及Calendar类的独特功能如获取和设定时间单位。还讨论了时间字符串的比较方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、代码中引入其他包文件的两种方式

  • 1、import引入 ,整个文件可用。
import java.util.Date;
  • 2、定义变量时在变量类型前加上包名。
java.sql.Date date1 = new java.sql.Date(System.currentTimeMillis());

两种方法的比较:
当引入不同包下的相同名字的类时,只能用import引入一个,另一个需要按照方式2引入。(因为JDk1.7之前util包和sql包都含有Date类,引入是会有冲突)

二、时间的输出

代码示例:

public void f1() {
		Date date = new Date();
		System.out.println(date);
		System.out.println(date.toLocaleString());
	}

结果:

Wed Dec 23 10:49:22 CST 2020
2020-12-23 10:49:22

直接输出Date类的对象显示格式是欧美类型的时间,调用toLocalString()方法输出的是“yyyy-mm-day hh:mm:ss”类型的时间。

  • toLocaleString() 带有删除线的方法:过期的或即将过期的方法。

三、SimpleDateFormat类

3.1 SimpleDateFormat类对象的初始化

SimpleDateFormat fmt1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

3.2 format()方法

public final String format(Date date);
将当前时间格式转换为指定格式

代码示例:

public void f11() {
		Date date = new Date();
		SimpleDateFormat fmt1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

		String date1 = fmt1.format(date);
		System.out.println(date1);
	}

结果:

2020-12-23 13:41:43

3.3 parse()方法

public Date parse(String source) throws ParseException{}
把String型的字符串转换成特定格式的date类型

代码示例:

public void f11() throws ParseException {
		SimpleDateFormat fmt1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");		
		String s1 = new String("2020-12-23 13:51:63");
		Date date2 = fmt1.parse(s1);
		System.out.println(date2);		
	}

结果:

Wed Dec 23 13:52:03 CST 2020

parse方法中传进的字符串参数格式必须和SimpleDateFormat变量定义时的一致。

四、Calendar类

运用set方法时,月份是从0~11,表示12个月份

4.1 实例化(官方标准)

Calendar cal = Calendar.getInstance();

4.2 获取时间、毫秒数

public void test() {
		Calendar cal = Calendar.getInstance();
		Date date =  cal.getTime();
		long l = cal.getTimeInMillis();
		System.out.println(date);
		System.out.println(l);
	}

结果:

Wed Dec 30 15:11:55 CST 2020
1609312315948

4.3 设定时间

代码示例:

cal.set(2020,1,1,17,0,0);
		System.out.println(cal.getTime().toLocaleString());

结果:

2020-2-1 17:00:00

Calendar中月份是0~11,对应12个月。

4.4 Calendar类区别于Date:可以获取时间单位

cal.set(2020,1,1,17,0,0);
System.out.println(cal.get(Calendar.MONTH));
System.out.println(cal.get(Calendar.YEAR));
System.out.println(cal.get(Calendar.DAY_OF_MONTH));

结果:

1
2020
1

五、时间格式的字符串比较

运用compareTo()方法比较:相同时返回0,前面时间比后边时间大时返回1,前面时间比后边时间小时返回-1.

代码示例:

String s0 = "2020-12-30 17:00:01";
		String s1 = "2020-12-30 17:00:01";
		String s2 = "2020-12-30 18:00:01";
		System.out.println(s1.compareTo(s0));
		System.out.println(s1.compareTo(s2));

结果:

0
-1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值