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时间操作内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 使用@Autowired可以注入ApplicationContext

    使用@Autowired可以注入ApplicationContext

    这篇文章主要介绍了使用@Autowired可以注入ApplicationContext问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • IDEA运行SpringBoot项目的超详细步骤截图

    IDEA运行SpringBoot项目的超详细步骤截图

    在当前的开发中Spring Boot开发框架已经成为主流,下面这篇文章主要给大家介绍了关于IDEA运行SpringBoot项目的超详细步骤截图,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2022-11-11
  • 一篇文章带你搞定 springsecurity基于数据库的认证(springsecurity整合mybatis)

    一篇文章带你搞定 springsecurity基于数据库的认证(springsecurity整合mybatis)

    这篇文章主要介绍了一篇文章带你搞定 springsecurity基于数据库的认证(springsecurity整合mybatis),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • 解读JSONArray删除元素的两种方式

    解读JSONArray删除元素的两种方式

    这篇文章主要介绍了解读JSONArray删除元素的两种方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • SpringBoot日志的使用解读

    SpringBoot日志的使用解读

    本文主要介绍了SpringBoot中日志的使用方法,包括默认输出格式、使用Lombok简化日志代码、通过yml和xml配置日志等
    2025-02-02
  • Java中异或的深入讲解

    Java中异或的深入讲解

    这篇文章主要给大家介绍了关于Java中异或的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Java具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-08-08
  • Java实现整数分解质因数的方法示例

    Java实现整数分解质因数的方法示例

    这篇文章主要介绍了Java实现整数分解质因数的方法,结合实力形式分析了质因数分解的原理与实现方法,涉及java数值运算相关操作技巧,需要的朋友可以参考下
    2017-12-12
  • Java HttpClient技术详解

    Java HttpClient技术详解

    Http协议的重要性相信不用我多说了,HttpClient相比传统JDK自带的URLConnection,增加了易用和灵活性(具体区别,日后我们再讨论),它不仅是客户端发送Http请求变得容易,而且也方便了开发人员测试接口(基于Http协议的),即提高了开发的效率,也方便提高代码的健壮性
    2021-10-10
  • Spring Boot学习入门之统一异常处理详解

    Spring Boot学习入门之统一异常处理详解

    我们在做Web应用的时候,请求处理过程中发生错误是非常常见的情况。下面这篇文章主要给大家介绍了关于Spring Boot学习入门之统一异常处理的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下。
    2017-09-09
  • SpringBoot Entity中枚举类型详细使用介绍

    SpringBoot Entity中枚举类型详细使用介绍

    本文介绍SpringBoot如何在Entity(DAO)中使用枚举类型。(本文使用MyBatis-Plus)。在实际开发中,经常会遇到表示类型或者状态的情况,比如:有三种支付方式:微信、支付宝、银联。本文介绍如何这种场景的方案对比,并用实例来介绍如何用枚举这种最优雅的来表示
    2022-10-10

最新评论