首页 > 编程语言 >Java之时间类

Java之时间类

时间:2023-02-13 19:35:13浏览次数:32  
标签:Java System birthDate 时间 println ChronoUnit today out

时间类

Date类

  • ZonedDateTime: 带时区的时间
  • ZoneId: 带时区
  • Instant: 时间戳

日期格式化类

SimpleDateFormat

  • DateTimeFormatter
Date d1 = new Date();
System.out.println(d1);
SimpleDateFormat smt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(smt.format(d1));

日历类

Calendar

  • LocalDateTime 年月日时分秒(重点)
  • LocalDate 年月日
  • LocalTime 时分秒
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDate d2= LocalDate.now();
LocalDateTime d4 = LocalDateTime.now();
LocalTime t1 = LocalTime.now();
String format = LocalDateTime.now().format(
   DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")
);  // datetime转字符串

// 不会改变原始值大小,会生成一个新的日期对象
d4.getYear(); // 获取
LocalDateTime d5 = d4.withYear(2000);// 修改
System.out.println("d5:" + d5.format(formatter));
LocalDateTime d6 = d4.minusYears(2);// 减少
System.out.println("d6:"+ d6.format(formatter));
LocalDateTime d7 = d4.plusYears(2);// 增加
System.out.println("d7:" + d7.format(formatter));

工具类

  • Duration :时间间隔(秒、纳秒)
  • Period:时间间隔(时分秒)
  • ChronoUnit:时间间隔(所有)重点
package com.lty;
 
import java.time.LocalDateTime;
import java.time.temporal.ChronoUnit;
 
public class ChronoUnitDemo {
    public static void main(String[] args) {
        LocalDateTime today = LocalDateTime.now();
        LocalDateTime birthDate = LocalDateTime.of(2000, 5, 21, 0, 0, 0, 0);
 
        System.out.println("相差的年数: " + ChronoUnit.YEARS.between(birthDate,today));
        System.out.println("相差的月数: " + ChronoUnit.MONTHS.between(birthDate,today));
        System.out.println("相差的周数: " + ChronoUnit.WEEKS.between(birthDate,today));
        System.out.println("相差的天数: " + ChronoUnit.DAYS.between(birthDate,today));
        System.out.println("相差的时数: " + ChronoUnit.HOURS.between(birthDate, today));
        System.out.println("相差的分数: " + ChronoUnit.MINUTES.between(birthDate, today));
        System.out.println("相差的秒数: " + ChronoUnit.SECONDS.between(birthDate,today));
        System.out.println("相差的毫秒数: " + ChronoUnit.MILLIS.between(birthDate,today));
        System.out.println("相差的微秒数: " + ChronoUnit.MICROS.between(birthDate,today));
        System.out.println("相差的纳秒数: " + ChronoUnit.NANOS.between(birthDate, today));
        System.out.println("相差的半天数: " + ChronoUnit.HALF_DAYS.between(birthDate, today));
        System.out.println("相差的十年数: " + ChronoUnit.DECADES.between(birthDate,today));
        System.out.println("相差的世纪有年数: " + ChronoUnit.CENTURIES.between(birthDate,today));
        System.out.println("相差的千年数: " + ChronoUnit.MILLENNIA.between(birthDate,today));
        System.out.println("相差的纪元数: " + ChronoUnit.ERAS.between(birthDate,today));
 
    }
}

标签:Java,System,birthDate,时间,println,ChronoUnit,today,out
From: https://www.cnblogs.com/his365/p/17117498.html

相关文章

  • java通过属性名称获取属性值或设置属性值
    一、实体类publicclassMessageBean{privateintcode=200;//编码privateStringmessage="";//信息publicintgetCode(){returncode;}pu......
  • java数组基础
    数组初始化就是给数组元素分配内存,并为每个元素赋初始值。初始化数组有两种方式:静态初始化(事先知道数组里存储那些数据)int[]c=newint[]{1,2,3,4,5,6};动态初始化......
  • Java基础语法
    注释注释是写在程序中对代码进行解释说明的文字,方便自己和他人查看,以便理解程序的IDEA中的快捷键是行注释CTRL/和块注释CTRLSHIFT/packagecom.wushf.note;publicc......
  • JAVA的列表上移下移操作实现
     这里的currentTypePriority表示当前移动的排序值nextTypePriority表示要移动的后一个排序值比如1、2、3、4、52要移动到5前面=》1、3、4、2、5那么这里的curren......
  • [JavaScript]内置对象Number初识
    学习:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/NumberNumber类型可以表示整型和浮点型。123===123.0;//trueNumber......
  • java 日期工具类
    packagecom.jd.rc.custom.oper.bff.common;importcom.jd.fastbe.framework.client.support.exception.BusinessException;importcom.jd.fastbe.framework.client.su......
  • mysql查询语句case及时间操作
    1、获取系统当前时间戳SELECT unix_timestamp(now())*1000 --乘以1000,为了得到毫秒时间戳   2、时间戳转年月日SELECTFROM_UNIXTIME(1676280033000/1000,......
  • 30个Javascript知识点总结,总有你不会的!
    最近重温了一遍红宝书,发现一些比较好玩的写法,很多东西日常都在用,但是发现还会有不一样的写法,结合一些日常工作中使用的方法,为大家总结一篇日常经常使用可能还不知道的点,希......
  • Java 生成 32位 UUID
    Java生成32位UUIDUUID:UniversallyUniqueIdentifier通用唯一识别码现在很多数据库的主键id,由原来的int自增,改为UUID表示。因为UUID本身不可能重复,线程安全,完美......
  • java面试题(五)
    1.1为什么Java代码可以实现一次编写、到处运行?参考答案JVM(Java虚拟机)是Java跨平台的关键。在程序运行前,Java源代码(.java)需要经过编译器编译成字节码(.class)。在程序运行时,JV......