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);
相关推荐
80530单词突击赢7 分钟前
JavaWeb进阶:SpringBoot核心与Bean管理
java·spring boot·后端
3GPP仿真实验室22 分钟前
【Matlab源码】6G候选波形:OFDM-IM 增强仿真平台 DM、CI
开发语言·matlab·ci/cd
devmoon25 分钟前
在 Polkadot 上部署独立区块链Paseo 测试网实战部署指南
开发语言·安全·区块链·polkadot·erc-20·测试网·独立链
lili-felicity25 分钟前
CANN流水线并行推理与资源调度优化
开发语言·人工智能
爬山算法26 分钟前
Hibernate(87)如何在安全测试中使用Hibernate?
java·后端·hibernate
沐知全栈开发26 分钟前
CSS3 边框:全面解析与实战技巧
开发语言
island131436 分钟前
CANN GE(图引擎)深度解析:计算图优化管线、内存静态规划与异构 Stream 调度机制
c语言·开发语言·神经网络
云姜.39 分钟前
线程和进程的关系
java·linux·jvm
是码龙不是码农40 分钟前
支付防重复下单|5 种幂等性设计方案(从初级到架构级)
java·架构·幂等性
曹牧41 分钟前
Spring Boot:如何在Java Controller中处理POST请求?
java·开发语言