Java常用API之日期类

Java常用API之日期类

标签: Java


Date类

全名:java.util.Date,本质是一个从1970年1月1日0时整开始到某个时间点的毫秒数,数据类型为long(长整型)。
导包快捷键:Alt+?
Date类提供两个实例化Date对象的方法:
a. 使用当前日期和时间来初始化对象

Date dd = new Date();//实例化日期类并表示当前时间
System.out.println(dd);//日期类型变量可以直接输出,输出的是固定的格式:Mon Aug 05 20:38:37 CST 2019
System.out.println(dd.getTime());//返回毫秒数(long数据类型)

b. 使用有参构造函数接收一个参数,该参数是从1970年1月1日起的毫秒数

Date d1 = new Date(1589765846858L);//参数为长整型的毫秒数

c. 比较两个日期可以直接使用毫秒数作为比较对象,大的值时间是越往后的
例如:

if(dd1.getTime()>dd2.getTime()){
    System.out.println("第一个日期在第二个日期之后");
}else{
    System.out.println("第一个日期在第二个日期之前");
}
SimpleDateFormat专门处理日期格式的类

例如:

SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 E HH:mm:ss.SSS");
Date now = new Date();//创建日期对象并表示当前时间
String dataStr = sdf.format(now);//将日期转为指定格式的字符串
System.out.println(dataStr);//2019年08月05日 星期一 20:52:18.288
Thread.sleep(Millis)

使当前线程休眠,接收参数为毫秒数。1000毫秒 = 1秒

try {
        	System.out.println(new Date() + "\n");//打印当前日期时间
			Thread.sleep(1000*5);// 休眠5秒
			System.out.println(new Date() + "\n");//休眠5秒后当前日期时间
		} catch (InterruptedException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}   
Calendar类

java.util.Calendar比Date类强大,使用Calendar类代表特定的时间,需要首先创建一个Calendar的对象,然后再设定该对象中的年月日参数来完成。

Calendar c1 = Calendar.getInstance();//默认当前日期
System.out.println(c1.get(Calendar.YEAR)+"-"+c1.get(Calendar.MONTH)+"-"+c1.get(Calendar.DATE));
c1.set(2019, 10, 15, 14, 31, 50);//通过set方法指定日期和时间(年,月,日,24小时制的小时,分钟,秒)
System.out.println(c1.get(Calendar.YEAR)+"-"+c1.get(Calendar.MONTH)+"-"+c1.get(Calendar.DATE)+" "
		+c1.get(Calendar.HOUR_OF_DAY)+":"+c1.get(Calendar.MINUTE)+":"+c1.get(Calendar.SECOND));//再通过get方法获取对象字段的值

也可以设定某个字段的值:

c1.set(Calendar.DATE,20);//日期设为20号
c1.set(Calendar.YEAR,2020);//年份设为2020年

对日期进行加减:

c1.add(Calendar.DATE,10);//日期上加10天,表10天后的日期
c1.add(Calendar.DATE, -5);//日期上减去5天,表示5天前的日期
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值