Hutool Hutool
(opens new window)
🏡首页
📖指南
🎢最佳实践
💖支持
💡javaDoc (opens new window)
⏳更新记录 (opens new window)
  • 🍎gitee (opens new window)
  • 🍏github (opens new window)
(opens new window)
🏡首页
📖指南
🎢最佳实践
💖支持
💡javaDoc (opens new window)
⏳更新记录 (opens new window)
  • 🍎gitee (opens new window)
  • 🍏github (opens new window)
  • 快速入门

  • 核心(hutool-core)

    • AI(Hutool-ai)

    • 注解(annotation)

    • 数组(array)

    • JavaBean(bean)

    • 缓存(cache)

    • 类加载器(classloader)

    • 编码解码(codec)

    • 集合(collection)

    • 比较器(comparator)

    • 压缩(compress)

    • 类型转换(convert)

    • 数据(data)

    • 日期时间(date)

      • 概述
      • 日期时间工具-DateUtil
      • 日期时间对象-DateTime
      • 农历日期-ChineseDate
      • LocalDateTime工具-LocalDateTimeUtil
      • 计时器工具-StopWatch
      • 日历工具-CalendarUtil
      • 日期构建器-DateBuilder
      • 日期间隔-DateBetween
        • 介绍
        • 主要功能
          • 1. DateBetween对象的创建
          • 2. 获取间隔值
          • 3. 按指定单位获取间隔
          • 4. 格式化输出
          • 5. 其他常用功能
        • 适用场景
      • 月份枚举-Month
      • 星期枚举-Week
      • 时间单位-DateUnit
      • 日期范围-DateRange
    • 异常(exception)

    • 函数(func)

    • IO流(io)

    • 语言特性(lang)

    • Map(map)

    • 数字数学(math)

    • 网络(net)

    • 对象池(pool)

    • 反射(reflect)

    • 正则(regex)

    • 服务提供(spi)

    • 聚合操作(stream)

    • 字符串文本(text)

    • 并发和线程(thread)

    • 树结构(tree)

    • 工具集合(util)

    • XML操作(xml)

  • 定时任务(hutool-cron)

  • 加密(hutool-crypto)

  • 数据库(hutool-db)

  • 扩展(hutool-extra)

  • HTTP(hutool-http)

  • 日志(hutool-log)

  • 配置文件(hutool-setting)

  • JSON(hutool-json)

  • Office办公(hutool-poi)

  • 套接字(hutool-socket)

  • GUI(hutool-swing)

  • 指南
  • 核心(hutool-core)
  • 日期时间(date)
Hutool
2026-01-03
目录

日期间隔-DateBetween

# 介绍

DateBetween是Hutool中用于计算两个日期之间间隔的类,提供了丰富的方法来获取不同时间单位的间隔值,简化了日期差异的计算。

# 主要功能

# 1. DateBetween对象的创建

// 创建DateBetween对象
Date start = DateUtil.parse("2023-01-01");
Date end = DateUtil.parse("2023-12-31");
DateBetween between = new DateBetween(start, end);

// 使用DateUtil创建DateBetween
DateBetween between = DateUtil.between(start, end);

// 指定时间单位创建
DateBetween between = DateUtil.between(start, end, DateUnit.DAY);

# 2. 获取间隔值

// 获取总毫秒数
long totalMs = between.getTotalMilliseconds();

// 获取总秒数
long totalSeconds = between.getTotalSeconds();

// 获取总分钟数
long totalMinutes = between.getTotalMinutes();

// 获取总小时数
long totalHours = between.getTotalHours();

// 获取总天数
long totalDays = between.getTotalDays();

// 获取总月数
long totalMonths = between.getTotalMonths();

// 获取总年数
long totalYears = between.getTotalYears();

# 3. 按指定单位获取间隔

// 获取按天计算的间隔
long days = between.between(DateUnit.DAY);

// 获取按小时计算的间隔
long hours = between.between(DateUnit.HOUR);

// 获取按分钟计算的间隔
long minutes = between.between(DateUnit.MINUTE);

// 获取按秒计算的间隔
long seconds = between.between(DateUnit.SECOND);

# 4. 格式化输出

// 格式化输出间隔
String formatted = between.format();
Console.log(formatted); // 输出类似: 364天10小时23分45秒

// 使用自定义格式输出
String customFormatted = between.format("yyyy'年'MM'月'dd'天'H'小时'm'分's'秒'");
Console.log(customFormatted); // 输出类似: 0年11月30天10小时23分45秒

# 5. 其他常用功能

// 判断是否为正间隔(结束时间大于开始时间)
boolean isPositive = between.isPositive();

// 获取开始时间
Date startDate = between.getStart();

// 获取结束时间
Date endDate = between.getEnd();

// 反向间隔
DateBetween reversed = between.reverse();

# 适用场景

DateBetween适用于以下场景:

  • 需要计算两个日期之间的间隔时
  • 需要以不同时间单位获取间隔值时
  • 需要格式化输出日期间隔时
  • 需要判断日期间隔的正负时

通过DateBetween,开发者可以更加便捷地计算和处理日期间隔,提高代码的可读性和可维护性。

日期构建器-DateBuilder
月份枚举-Month

← 日期构建器-DateBuilder 月份枚举-Month→

Theme by Vdoing | Copyright © 2025-2026 Hutool | Apache-2.0
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式