Java LocalTime的常用时间操作总结

 更新时间:2023年11月14日 09:32:21   作者:Andy_GF  
日常开发中, 我们会经常遇到时间的运算, 操作, 格式化等, 这篇文章主要为大家详细介绍了LocalTime的常用时间操作,感兴趣的小伙伴可以了解一下

简介

LocalTime是JDK8以后的 Api, 主要功能时 分 秒 微秒的相关计算, 比如当前时间加多少小时是几点, 减多少小时是几点.......

常用 Api

1 获取时间对象信息

// 本地当前时间, 时间对象 (不可变的对象)
LocalTime lt = LocalTime.now();  // 时 分 秒  纳秒 
System.out.println(lt);          // 14:49:40.992546000

// 获取时间对象信息
int hour = lt.getHour();      // 时
int minute = lt.getMinute();  // 分
int second = lt.getSecond();  // 秒
int nano = lt.getNano();      // 纳秒
System.out.println(hour);     // 14
System.out.println(minute);   // 49
System.out.println(second);   // 40
System.out.println(nano);     // 992546000

2 直接修改日期对象信息

// 直接修改时间:withHour、withMinute、withSecond、withNano
LocalTime lt3 = lt.withHour(2);
LocalTime lt4 = lt.withMinute(10);
LocalTime lt5 = lt.withSecond(10);
LocalTime lt6 = lt.withNano(50);
System.out.println(lt3);  // 02:49:40.992546000
System.out.println(lt4);  // 14:10:40.992546000
System.out.println(lt5);  // 14:49:10.992546000
System.out.println(lt6);  // 14:49:40.000000050
System.out.println(lt);   // 14:49:40.992546000

3 时间运算: 加 / 减

1 加法

// 加多少:plusHours、plusMinutes、plusSeconds、plusNanos
LocalTime lt7 = lt.plusHours(10);
LocalTime lt8 = lt.plusMinutes(10);
LocalTime lt9 = lt.plusSeconds(10);
LocalTime lt10 = lt.plusNanos(10);
System.out.println(lt7);  // 00:49:40.992546000
System.out.println(lt8);  // 14:59:40.992546000
System.out.println(lt9);  // 14:49:50.992546000
System.out.println(lt10); // 14:49:40.992546010
System.out.println(lt);   // 14:49:40.992546000

2 减法

// 减多少:minusHours、minusMinutes、minusSeconds、minusNanos
LocalTime lt11 = lt.minusHours(10);
LocalTime lt12 = lt.minusMinutes(10);
LocalTime lt13 = lt.minusSeconds(10);
LocalTime lt14 = lt.minusNanos(10);
System.out.println(lt11);  // 04:49:40.992546000
System.out.println(lt12);  // 14:39:40.992546000
System.out.println(lt13);  // 14:49:30.992546000
System.out.println(lt14);  // 14:49:40.992545990
System.out.println(lt);    // 14:49:40.992546000

4 获取指定时间的的 LocalTime 对象

// public static LocalTime of(int hour, int minute, int second)
LocalTime lt15 = LocalTime.of(12, 12, 12);
LocalTime lt16 = LocalTime.of(12, 12, 12);
System.out.println(lt13);  // 12:12:12
System.out.println(lt16);  // 12:12:12

5 判断2个时间的早晚

System.out.println(lt15.equals(lt16)); // true   同一时间
System.out.println(lt15.isAfter(lt));  // false  lt15 不在 lt 之后
System.out.println(lt15.isBefore(lt)); // true   lt15 在 lt 之前

6 格式化

DateTimeFormatter dtf = DateTimeFormatter.ofPattern("HH-mm-ss");

// 时间 转 String
LocalTime time = LocalTime.of(18, 17, 55);
String result = time.format(dtf);
System.out.println(result);  // 18-17-55

// String 转 时间对象, 特殊格式
String timeStr = "15-10-58";
LocalTime time1 = LocalTime.parse(timeStr, dtf);
System.out.println(time1);   // 15:10:58

// String 转 时间对象, 默认格式: "HH:mm:ss"
LocalTime time2 = LocalTime.parse("13:22:33");
System.out.println(time2);   // 13:22:33

到此这篇关于Java LocalTime的常用时间操作总结的文章就介绍到这了,更多相关Java LocalTime时间操作内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java中的CountDownLatch同步工具类使用解析

    Java中的CountDownLatch同步工具类使用解析

    这篇文章主要介绍了Java中的CountDownLatch使用解析,CountDownLatch初始化的时候必须指定一个count,await方法会一直阻塞直到调用countdown方法,count为0,当count为0时,所有的等待线程都会被释放,需要的朋友可以参考下
    2023-12-12
  • Spring--国内Java程序员用得最多的框架

    Spring--国内Java程序员用得最多的框架

    前几年面试最常问的且可以顺利拿到高薪的技能是Spring,随着Spring体系的壮大,除非你在简历上添加Spring Boot和Spring Cloud的技能,才可以打动面试官,而现在,除非是Spring全家桶的实战经验,否则难以让面试官高看
    2021-06-06
  • Java线程重复执行以及操作共享变量的代码示例

    Java线程重复执行以及操作共享变量的代码示例

    这篇文章主要介绍了Java中对线程重复执行以及操作共享变量的代码示例,来自于Java面试题目的练习整理,需要的朋友可以参考下
    2015-12-12
  • Java聊天室之使用Socket实现传递图片

    Java聊天室之使用Socket实现传递图片

    这篇文章主要为大家详细介绍了Java简易聊天室之使用Socket实现传递图片功能,文中的示例代码讲解详细,具有一定的借鉴价值,需要的可以了解一下
    2022-10-10
  • java实现多线程的两种方式继承Thread类和实现Runnable接口的方法

    java实现多线程的两种方式继承Thread类和实现Runnable接口的方法

    下面小编就为大家带来一篇java实现多线程的两种方式继承Thread类和实现Runnable接口的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-09-09
  • Spring中的spring.factories文件用法(Spring如何加载第三方Bean)

    Spring中的spring.factories文件用法(Spring如何加载第三方Bean)

    这篇文章主要介绍了Spring中的spring.factories文件用法(Spring如何加载第三方Bean),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-10-10
  • 基于Java实现简易的七星彩号码生成器

    基于Java实现简易的七星彩号码生成器

    七星彩是中国体育彩票的一种玩法,由中国国家体育总局体育彩票管理中心统一发行。本文为大家准备了一个七星彩号码生成器Java工具类,感兴趣的可以了解一下
    2022-08-08
  • 基于Spring AOP proxyTargetClass的行为表现总结

    基于Spring AOP proxyTargetClass的行为表现总结

    这篇文章主要介绍了Spring AOP proxyTargetClass的行为表现总结,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08
  • Spring EL表示式的运用@Value说明

    Spring EL表示式的运用@Value说明

    这篇文章主要介绍了Spring EL表示式的运用@Value说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04
  • Spring Cloud Feign报错问题解决

    Spring Cloud Feign报错问题解决

    这篇文章主要介绍了Spring Cloud Feign报错问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12

最新评论