java常用类:时间类

Date类

  • Date表示特定的瞬间,精确到毫秒。Date类中的大部分方法都已经被Calendar类中的方法取代

  • 时间单位

    • 1秒=1000毫秒

    • 1毫秒=1000微秒

    • 1微秒=1000纳秒

public static void main(String[] args) {
       Date date = new Date();
       //已经被弃用但还可以使用,打印今天的日期
       System.out.println(date.toLocaleString());
       //打印昨天的日期,一天的时间乘以1000毫秒
       Date date1 = new Date(date.getTime()-(60*60*24*1000));
       System.out.println(date1.toLocaleString());

  }

 

Calendar类

  • Calendar提供了获取或设置各种日历字段的方法

  • 构造方法

    • protected Calendar():由于修饰符是protected,所以无法直接创建该对象

public static void main(String[] args) {
       //由于Calendar构造方法是protected,所以创建对象时调用它的静态方法
       Calendar calendar=Calendar.getInstance();
       System.out.println(calendar.getTime().toLocaleString());

       //获取年份
       int year=calendar.get(Calendar.YEAR);
       //月份   0-11而不是1-12
       int month=calendar.get(Calendar.MONTH);
       //日
       int day=calendar.get(Calendar.DAY_OF_MONTH);
       //小时
       int hour=calendar.get(Calendar.HOUR_OF_DAY);//hour12小时,HOUR_OF_DAY24小时
       //分钟
       int minute=calendar.get(Calendar.MINUTE);
       //秒
       int second = calendar.get(Calendar.SECOND);
       System.out.println(year+"年"+(month+1)+"月"+day+"日"+hour+"时"+minute+"分"+second+"秒");

  }

 

SimpleDateFormat类

  • SimpleDateFormat是一个以语言环境有关的方式来格式化和解析日期的具体类。

  • 进行格式化(日期->文本)、解析(文本->日期)

  • 常用的时间模式字母

字母日期或时间示例
y 2019
M 年中月份 08
d 月中天数 10
H 1天中小时数(0-23) 22
m 分钟 16
s 59
S 毫秒 367
 public static void main(String[] args) throws Exception{
       //创建SimpleDateFormat对象,格式自己定义,后续改动都得保持格式一致性
       SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH-mm-ss");
       //创建Date
       Date date = new Date();
       //格式化date,用字符串接收
       String str=sdf.format(date);
       System.out.println(str);

       //解析(把字符串转成日期)
       Date date1=sdf.parse("2018-09-08 23-24-24");
       System.out.println(date1.toLocaleString());


  }
 
posted @   ywjt  阅读(83)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示