java当前时间转化毫秒_Java学习笔记-时间相关类

1. Date类: java.util.Date

  • 时间原点:1970年1月1日00:00:00(中国+8小时)
  1. System.currentTimeMillis() 计算当前时间到原点经历的毫秒数
  2. 无参构造:当前系统时间
  3. toLocalString()方法:按当地习惯打印时间
1    Date date = new Date();
2    System.out.println(date);//打印当前时间Tue Jul 28 20:57:42 CST 2020

4. 带参数构造:传入相对原点的毫秒,打印其对应时间

1    Date date = new Date(0L);
2    System.out.println(date); //Thu Jan 01 08:00:00 CST 1970
3    Date date1 = new Date(System.currentTimeMillis());
4    System.out.println(date1); //Tue Jul 28 21:02:32 CST 2020

5. long getTime(Date) 把Date类型的日期转换为毫秒,无参数时相当于System.currentTimeMillis()

2. DateFormat类: java.text.DateFormat

  • 是一个抽象类。继承自Format抽象类。
  • 可以使用它的子类:SimpleDateFormat类
  • 格式化日期为文本、解析文本为日期
  1. String format(Date date): 按照指定模式把日期解析为文本
  2. Date parse(String source): 把符合标准的字符串解析为Date日期
  3. SimpleDateFormat

06e4c172f078ba8b671676f935da2bbf.png

如:"yyyy-MM-dd HH:mm:ss", "yyyy年MM月dd日 HH时mm分ss秒"

1    SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
2    Date date= new Date();  //得到当前时间
3    String standardDate = simpleDateFormat.format(date);
4    System.out.println(standardDate);  //2020-07-28 21:24:36
5
6    date = simpleDateFormat.parse(standardDate);   //必须和构造方法中的格式一样
7    System.out.println(date);   //Tue Jul 28 21:28:38 CST 2020

3. Calendar类: java.util.calendar

  • 是一个抽象类,提供了很多操作日历字段的方法
  • 无法直接创建对象,里面有一个getInstance()方法返回一个Canlendar类的子类对象
  • public int get(int field): 返回给定日历字段的值
  • public void set(int field , int value): 将给定的日历字段设置为给定值
  • public abstract void add(int field, int amount): 根据日历规则,给日历字段增减指定的时间量
  • public Date getTime(): 返回表示此Calendar时间毫秒数的Date对象

514d4ba44fa4f3c8e34adb77ef1ed7de.png
1    Calendar c = Calendar.getInstance();  //返回Calendar类的子类对象,多态
2    int year = c.get(Calendar.YEAR);    //2020,YEAR是常量1,是field
3    int month = c.get(Calendar.MONTH);  //6
4    int date = c.get(Calendar.DATE);    //28
5    System.out.println(year+"-"+(month+1)+"-"+date);  //2020-7-28

1    Calendar c = Calendar.getInstance();  //返回Calendar类的子类对象,多态
2
3    c.set(Calendar.YEAR, 2222);       //单独设置某个字段
4    c.set(3333, 11,12);               //全部一起设置
5    year = c.get(Calendar.YEAR);
6    month = c.get(Calendar.MONTH);
7    date = c.get(Calendar.DATE);
8    System.out.println(year+"-"+(month+1)+"-"+date);  //3330-12-12

1    Date ddate = c.getTime();
2    System.out.println(ddate);   //Tue Dec 12 22:48:25 CST 3330
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值