
/**
* 测试Date类
* DateFormat抽象类 SimpleDateFormat类 用于日期和字符串之间转换
*/
public class TestDate {
public static void main(String[
args) {
long nowTime = System.currentTimeMillis();
//返回当前时间 单位毫秒 从1970-01-01 0:00开始计算的总毫秒值 在1970以后为正数 以前为负数
//java.lang.System类静态方法
long max = Long.MAX_VALUE;
//包装类Long中存放常量 MAX MIN
long range = max/(1000L*3600*24*365);
//1000毫秒 加L转为long类型防止int溢出
System.out.println(range+\"的结果为292471208\");
//范围为正负2.9亿年
Date d1 = new Date();
System.out.println(d1+\"的结果为Mon Jul 11 20:52:25 CST 2022\");
//无参new Date()返回当前时间的Date对象 d1.fastTime存储当前时间System.currentTimeMillis()的long值
System.out.println(d1.getTime()+\"的结果为1657544258209\");
//.getTime()返回fastTime
System.out.println(d1.getTime()/(1000L*3600*24*365)+\"的结果为52 即从1970至今(2022)52年\");
Date d2 = new Date(1000L*3600*24*365*52);
//传参long 毫秒
System.out.println(d2+\"的结果为Sun Dec 19 08:00:00 CST 2021 有闰年所以有误差\");
SimpleDateFormat df = new SimpleDateFormat();
//format格式化 ()中的参数为字符串 通过输入的字符串设定日期的匹配格式和输出格式 无参默认格式为\"yy-MM-dd 上/下午hh:mm\" DateFormat为抽象类 可以用做引用类型 构造器需要用SimpleDateFormat()
System.out.println(df.format(d1)+\"的结果为22-7-11 下午9:38\");
//yy22 MM7 dd11 下午 hh9 :mm38 .format()将Date对象转换为字符串String 按照df设定好的格式
try {
System.out.println(df.parse(\"90-12-20 上午11:30\"));
//parse解析操作要求处理ParseException try/catch和throws二选一
//结果为Thu Dec 20 11:30:00 CST 1990
//.parse()将符合设定格式的字符串转换为Date对象 print的结果为Date对象.toString 所以格式和设定的格式不同
//这里90转换为1990
catch (ParseException e) {
throw new RuntimeException(e);
DateFormat df2 = new SimpleDateFormat(\"年份:yyyy 月份大写的:MM 日:dd 小时0-23:HH 分钟:mm 秒:ss 年里的第几周:w 年里的第几天:D 星期几大写的:EEE三个字符就显示单词的前三位\");
try {
Date d4 = df2.parse(\"年份:2022 月份大写的:07 日:11 小时0-23:22 分钟:04 秒:25 年里的第几周:29 年里的第几天:192 星期几大写的:星期一三个字符就显示单词的前三位\"/*中文环境下显示为汉字星期几*/);
System.out.println(d4+\"的结果为Mon Jul 11 22:04:25 CST 2022\");
//格式中的EEE在中文环境下变成了 星期几 格式中的字母是固定含义的 比如年份只能用y表示 不同在于 yy代表末尾两位数 yyyy代表四位年份 但第几周的w一个就对应了29 第几天的D一个就对应了192
catch (ParseException e) {
throw new RuntimeException(e);
【裁员|java Date类和DateFormat类】
- 程序员|程序员的口味变了!C++首次逆袭JAVA:跻身最受欢迎编程语言TOP3
- Java|华为笔记本双12大促开启 智慧体验让办公学习更高效
- Java|京东第一刀落下:多个副总裁卸任 刘强东嫡系人手接管
- Java|荣耀Magic5Pro很大胆,16GB+5000mAh+100W,香喷喷
- Java|MIUI14把精简当作核心卖点,国产系统急需做减法
- Java|“高薪专业户”的IT互联网行业是否已达到天花板?Java行业薪酬
- javascript|全民淘宝节|千万个淘宝卖家,有千万种答案
- 【微服务】146:商品品牌业务后台Java代码编写
- 【微服务】162:利用Java实现索引库相关的分页、排序和聚合
- Java|闹剧结束了?台积电正式宣布,美媒:张忠谋把关键技术留在了本土
