Java实用类——操作日期和时间

Date类:

  • Date 位于java.util.Date类:表示日期和时间
  • SimpleDateFormat 位于 java.text.SimpleDateFormat类**:格式化日期类**
  • **parse方法:**将字符串转为日期类型
java 复制代码
 public static void main(String[] args) throws ParseException {
        //获得当前时间
        Date date = new Date();
        System.out.println(date);
        //创建格式化日期工具,并且指定格式
        SimpleDateFormat simpleDateFormat =
                new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        //这时候不能直接输出,需要转成String类型
        String strdate = simpleDateFormat.format(date);
        System.out.println("格式化后:"+strdate);
        //将字符串转为日期类型
        Date br = simpleDateFormat.parse("1991-12-31 01:01:01");
    }

创建了一个当前日期和时间的Date对象,并使用 **SimpleDateFormat****将日期和时间格式化为指定的字符串格式 ,**可以用String类型接收字符串。"yyyy-MM-dd HH-mm-ss"是一种规定好了的日期和时间格式

Calendar类:

Calendar类是一个抽象类 ,**可以通过静态方法getInstance()来获得Calendar的对象,**其实这个获得的对象是它子类的对象。

|-------------------------|--------------|
| int get(int field) 静态方法 | 返回给定日历字段的值 |
| YEAR | 年 |
| MONTH | 月 |
| DAY_OF_MONTH | 一月中的某天 |
| DAY_OF_WEEK | 一星期中的某天 |
| getInstance() | 获取Calendar对象 |

java 复制代码
  //因为这个getInstance()是静态常量,用来获取对象
        Calendar calendar = Calendar.getInstance();
//get方法用来从Calendar对象中获取特定的字段值  
        System.out.println("今天是:"+calendar.get(Calendar.YEAR)+
                           "年"+calendar.get(Calendar.MONTH)+
                           "月"+calendar.get(Calendar.DAY_OF_MONTH+1)+"日");

设置日期:

java 复制代码
 calendar.set(2015, Calendar.APRIL, 6); // 设置日期为2015年4月6日

获取代码运行时间:

System.currentTimeMillis();用long来接收,一个在程序头一个在程序尾就可以减出来运行花费的毫秒数

System.currentTimeMillis();返回从1970年1月1日00:00:00:000以来的毫秒数

java 复制代码
 public static void main(String[] args) {
//返回1970年1月1日00:00:00:000以来的毫秒数
        long l = System.currentTimeMillis();
        Calendar cal = Calendar.getInstance();
        System.out.println(Calendar.YEAR);
        System.out.println((Calendar.MONTH)+1);//0-11月所以需要+1
        System.out.println(Calendar.DATE);

        long l1 = System.currentTimeMillis();
        System.out.println("该程序运行的时间为(毫秒数):"+(l1-l));

    }

LocalDateTime(1.8新增的日期操作):

LocalDateTime :表示日期和时间,不包含时区信息

LocalDate:仅表示日期,不包含时间和时区信息

LocalTime:仅表示时间,不包含日期和时区信息

java 复制代码
       //当前日期
        LocalDate localDate = LocalDate.now();
        System.out.println("当前日期:"+localDate);
        
        //当前时间
        LocalTime localTime = LocalTime.now();
        System.out.println("当前时间"+localTime);
        
        //获取当前日期和时间
        LocalDateTime localDateTime = LocalDateTime.now();
        System.out.println("当前日期和时间:"+localDateTime);
格式化:
java 复制代码
String format = localDateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
System.out.println("格式化后的日期"+format);
相关推荐
CAE虚拟与现实几秒前
源码注解 /class 注解 / 运行时注解三者生命周期
java·开发语言
有脚就行3 分钟前
第24篇-Go-gRPC推理服务-高性能跨语言通信
开发语言·人工智能·后端·golang
码匠许师傅3 分钟前
【C++ 面试真题】聊聊 C++ 的关联容器
开发语言·c++·面试
互联网中的一颗神经元7 分钟前
02. 核心概念与术语表
java·jvm·spring
丰锋ff9 分钟前
7.2Qt中Json的操作
开发语言·qt·json
January120712 分钟前
Cassandra CQL 基本命令详解
java
我不是疯子是傻子18 分钟前
用DeepSeek生成Qt多协议解析器?「正则+状态机+AI分支裁剪」混合调优实战
开发语言·qt
新鲜势力呀19 分钟前
深入理解 Elliot CUDA 编程核心:PHP 实现 CUDA 并行计算思想与实践
android·开发语言·php
Escalating_xu27 分钟前
【Linux】线程概念与控制:从地址空间、LWP 到 pthread_create、join、detach 与 NPTL
java·linux·redis
Lam Tang28 分钟前
APS 系列文章 09
java·代理模式