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

简介: Java八大常用类(五) 时间类常用类 4 Date类和DateFormat类我们把1970年1月1日00:00:00 定为基准时间Date类大部分方法已过时,不常用package oop2.date;/* Date中的三个类 sql包下的类 Date: 只含有年月日 Time: 只含有时分秒 Timestamp: 时间戳,既含有年月日,又含有时分秒 */import java.sql.Date;public class DateB { public static void main(String[] args) {

常用类 4 Date类和DateFormat类

我们把1970年1月1日00:00:00 定为基准时间

Date类

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

package oop2.date;
/*
    Date中的三个类
    sql包下的类
    Date: 只含有年月日
    Time: 只含有时分秒
    Timestamp: 时间戳,既含有年月日,又含有时分秒
 */
import java.sql.Date;
public class DateB {
    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;
/*
    作用:格式化日期类
 */
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateFormatA {
    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 {
    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 {
    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);
    }
}
相关文章
|
4月前
|
Java 编译器 API
Java 密封类:精细化控制继承关系
Java 密封类:精细化控制继承关系
341 83
|
2月前
|
安全 Java 数据建模
Java记录类:简化数据载体的新选择
Java记录类:简化数据载体的新选择
232 101
|
2月前
|
安全 Java 开发者
Java记录类:简化数据载体的新方式
Java记录类:简化数据载体的新方式
285 100
|
5月前
|
IDE Java 数据挖掘
Java 基础类从入门到精通实操指南
这份指南专注于**Java 17+**的新特性和基础类库的现代化用法,涵盖开发环境配置、数据类型增强(如文本块)、字符串与集合处理进阶、异常改进(如密封类)、IO操作及实战案例。通过具体代码示例,如CSV数据分析工具,帮助开发者掌握高效编程技巧。同时提供性能优化建议和常用第三方库推荐,适合从入门到精通的Java学习者。资源链接:[点此下载](https://pan.quark.cn/s/14fcf913bae6)。
227 36
|
3月前
|
安全 IDE Java
Java记录类型(Record):简化数据载体类
Java记录类型(Record):简化数据载体类
418 143
|
1月前
|
存储 Java 索引
用Java语言实现一个自定义的ArrayList类
自定义MyArrayList类模拟Java ArrayList核心功能,支持泛型、动态扩容(1.5倍)、增删改查及越界检查,底层用Object数组实现,适合学习动态数组原理。
87 4
|
1月前
|
IDE JavaScript Java
在Java 11中,如何处理被弃用的类或接口?
在Java 11中,如何处理被弃用的类或接口?
160 5
|
1月前
|
JSON 网络协议 安全
【Java】(10)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
143 1
|
1月前
|
Java Go 开发工具
【Java】(8)正则表达式的使用与常用类分享
正则表达式定义了字符串的模式。正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别。
203 1
|
1月前
|
存储 Java 程序员
【Java】(6)全方面带你了解Java里的日期与时间内容,介绍 Calendar、GregorianCalendar、Date类
java.util 包提供了 Date 类来封装当前的日期和时间。Date 类提供两个构造函数来实例化 Date 对象。第一个构造函数使用当前日期和时间来初始化对象。Date( )第二个构造函数接收一个参数,该参数是从1970年1月1日起的毫秒数。
148 1