java日期相关类

版权声明:本文为博主原创文章,只要注明出处,喜欢可以随意转载,希望能帮到你。 https://blog.csdn.net/weixin_41287260/article/details/89410337

这里只是简单记录一下个人认为比较常用的一些方法,统一导包:

import java.text.ParseException;    // 解析字符串时需要抛出的异常处理
import java.text.SimpleDateFormat;  // 格式化时间需要
import java.util.Date;

目录

1.获取本地时间:

2.格式化时间

3.日期转字符串

4.字符串转日期

5.求两个日期之间相隔的天数


1.获取本地时间:

Date date = new Date();
// public String toString()
// Converts this Date object to a String of the form: 即将日期对象转换成特定格式的字符串
// dow mon dd hh:mm:ss zzz yyyy
// Sat Apr 20 01:29:45 CST 2019
System.out.println(date.toString());
System.out.println(date);		// 直接输出date也一样

2.格式化时间

Date date1 = new Date();
SimpleDateFormat sdf = new SimpleDateFormat(); // 采用默认的格式
System.out.println(sdf.format(date1)); 			// 19-4-20 上午1:37

SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd E HH:mm:ss"); // 设置输出格式
System.out.println(sdf1.format(date1)); 		// 2019-04-20 星期六 01:37:12

3.日期转字符串

Date date2 = new Date();
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyyMMdd");
String string = sdf2.format(date2);
System.out.println(string); // 20190420

4.字符串转日期

SimpleDateFormat sdf3 = new SimpleDateFormat("yyyyMMdd");
String string1 = "20190420";
Date date3 = sdf3.parse(string1);
System.out.println(date3);	// Sat Apr 20 00:00:00 CST 2019
String string2 = sdf2.format(date3);
System.out.println(string2);	// 20190420
		
// 上面方法也可简化成这样
Date date31 = new SimpleDateFormat("yyyy/MM/dd").parse("2019/04/19");	// 字符串解析字符串,返回为日期对象
String string31 = new SimpleDateFormat("yyyy年MM月dd日").format(date31);	// 字符串格式化日期,返回为字符串
System.out.println(string31);	// 2019年04月19日

5.求两个日期之间相隔的天数

/*
* 先讲一下思路:求得两个时间到1970的毫秒数,然后相减,得到间隔毫秒数,然后再将毫秒转化为天数
* 
* 用到的方法介绍:
* public long getTime()
* Returns the number of milliseconds since January 1, 1970, 00:00:00 GMT represented by this Date object
 * 
 */
Date date4 = new Date();
System.out.println("January 1, 1970 00:00:00到现在的毫秒数:"+date.getTime());	// 即为时间戳

// 按照特定格式解析时间字符串为日期对象
SimpleDateFormat sdf4 = new SimpleDateFormat("yyyy-MM-dd");
Date beginDate = sdf4.parse("2019-3-20");
Date endDate = sdf4.parse("2019-4-20");
		
// 计算
long day = (endDate.getTime() - beginDate.getTime()) / (24 * 60 * 60 * 1000);
System.out.println("相隔的天数=" + day);

end……

猜你喜欢

转载自blog.csdn.net/weixin_41287260/article/details/89410337