前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java八大常用类(五) 时间类

Java八大常用类(五) 时间类

作者头像
卢衍飞
发布2023-02-14 13:59:31
4560
发布2023-02-14 13:59:31
举报
文章被收录于专栏:技术分享交流

常用类 4 Date类和DateFormat类 我们把1970年1月1日00:00:00 定为基准时间

Date类 大部分方法已过时,不常用

package oop2.date; /*

代码语言:javascript
复制
Date中的三个类

sql包下的类
Date: 只含有年月日
Time: 只含有时分秒
Timestamp: 时间戳,既含有年月日,又含有时分秒

*/

import java.sql.Date;

public class DateB {

代码语言:javascript
复制
public static void main(String[] args) {
    //只含有年月日 ,没有时分秒
    java.sql.Date date1 = new java.sql.Date(System.currentTimeMillis());
    System.out.println(date1);

    String d = "2019-9-10";
    Date date = Date.valueOf(d);
    System.out.println(date);      //字符串类型转化为Date类型
}

} DateFormat类 日期格式化的类

package oop2.date; /*

代码语言:javascript
复制
作用:格式化日期类

*/

import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date;

public class DateFormatA {

代码语言:javascript
复制
public static void main(String[] args) throws ParseException {
    Date date = new Date();
    System.out.println(date);

    //时间格式化
    DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");    // 也可以:  yyyy年MM月dd日 hh:mm:ss
//    DateFormat dateFormat2 = new SimpleDateFormat("yyyy年MM月dd日 hh:mm:ss");

    //调用格式方法
    String format = dateFormat.format(date);
//    String format2 = dateFormat2.format(date);

    System.out.println(format);
//    System.out.println(format2);

    System.out.println("===================  [B]  String类型转为Date类型  ====================================");

    String str = "2020-09-09 09:09:09";
    DateFormat dateFormat1 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");  //转的格式和string的格式要一致
    Date parse = dateFormat1.parse(str);
    System.out.println(parse);

}

} 常用类 5 Calendar类(日历类) 在1.7 1.8还能用,到高版本也已经过时了。

package oop2.date;

import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar;

public class MyCalendar {

代码语言:javascript
复制
public static void main(String[] args) {
    //创建日历类对象

    Calendar calendar = new GregorianCalendar();
    System.out.println(calendar);
    System.out.println(calendar.get(Calendar.YEAR));
    System.out.println(calendar.get(Calendar.MONTH));
    System.out.println(calendar.get(Calendar.DAY_OF_MONTH));

    System.out.println(calendar.get(Calendar.HOUR));

    //可以对年月日进行修改实现
    calendar.set(Calendar.MONTH,6);

    System.out.println(calendar.get(Calendar.MONTH));

    int max = calendar.getMaximum(Calendar.DATE);    //获得本月中一共有多少天
    System.out.println(max);

    /*
        Calendar和Date 类可以相互转换
     */

    //把日期类对象转成日历类对象
    Date date = new Date();
    Calendar calendar1 = new GregorianCalendar();
    calendar1.setTime(date);

    //把日历类对象转化为日期类
    Date time = calendar1.getTime();

}

} 常用类 6 JDK8的新日期类 引入了 java.time 包 。少用的。常用的还是Date和DateFormat类

package oop2.date;

import java.time.Instant; import java.time.LocalDate; import java.time.format.DateTimeFormatter;

/**

  • JDK1.8中新增加的 */

public class MyTimeA {

代码语言:javascript
复制
public static void main(String[] args) {

    //Instant
    Instant now = Instant.now();
    System.out.println(now);
    System.out.println(now.MAX);
    System.out.println(now.MIN);
    System.out.println(now.EPOCH);

    //LocalDate    这个只含有年月日
    LocalDate localDate = LocalDate.now();
    System.out.println(localDate);

    //DateTimeFormatter
    DateTimeFormatter dft = DateTimeFormatter.ofPattern("yyyy年MM月dd日");
    String format = localDate.format(dft);
    System.out.println(format);

    // String 类型转LocalDate
    LocalDate.parse("2029年09月10日",dft);

}

}

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023 年 01 月,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档