3hutool实战:DateUtil-获取日期的各种内容
Posted 小虚竹
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3hutool实战:DateUtil-获取日期的各种内容相关的知识,希望对你有一定的参考价值。
技术活,该赏
关注+一键三连(点赞,评论,收藏)再看,养成好习惯
用途:获取日期的各种内容
使用场景
获取日期的各种内容,包含但不限于:年,季度,月,周,星期,日,时,分,秒,毫秒
项目引用
此博文的依据:hutool-5.6.5版本源码
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-core</artifactId>
<version>5.6.5</version>
</dependency>
方法摘要
方法明细
方法名称:cn.hutool.core.date.DateUtil.year(java.util.Date)
方法描述
获得年的部分
支持版本及以上
参数描述:
参数名 | 描述 |
---|---|
Date date |
date 日期
|
返回值:
年的部分
参考案例:
//获得年的部分
int year =DateUtil.year(DateUtil.date());
System.out.println(year);
Assert.assertNotNull(year);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.quarter(java.util.Date)
方法描述
获得指定日期所属季度,从1开始计数
支持版本及以上
4.1.0
参数描述:
参数名 | 描述 |
---|---|
Date date |
date 日期
|
返回值:
第几个季度
参考案例:
//获得指定日期所属季度,从1开始计数
int quarter = DateUtil.quarter(DateUtil.date());
System.out.println(quarter);
Assert.assertNotNull(quarter);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.quarterEnum(java.util.Date)
方法描述
获得指定日期所属季度
支持版本及以上
4.1.0
参数描述:
参数名 | 描述 |
---|---|
Date date |
date 日期
|
返回值:
第几个季度枚举
参考案例:
//获得指定日期所属季度
Quarter quarterEnum = DateUtil.quarterEnum(DateUtil.date());
System.out.println(quarterEnum);
Assert.assertNotNull(quarterEnum);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.month(java.util.Date)
方法描述
获得月份,从0开始计数
支持版本及以上
参数描述:
参数名 | 描述 |
---|---|
Date date |
date 日期
|
返回值:
月份,从0开始计数
参考案例:
//获得月份,从0开始计数
int month = DateUtil.month(DateUtil.date());
System.out.println(month);
Assert.assertNotNull(month);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.monthEnum(java.util.Date)
方法描述
获得月份
支持版本及以上
参数描述:
参数名 | 描述 |
---|---|
Date date |
date 日期
|
返回值:
{@link Month}
参考案例:
//获得月份
Month monthEnum = DateUtil.monthEnum(DateUtil.date());
System.out.println(monthEnum);
Assert.assertNotNull(monthEnum);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.weekOfYear(java.util.Date)
方法描述
获得指定日期是所在年份的第几周<br>
此方法返回值与一周的第一天有关,比如:<br>
2016年1月3日为周日,如果一周的第一天为周日,那这天是第二周(返回2)<br>
如果一周的第一天为周一,那这天是第一周(返回1)<br>
跨年的那个星期得到的结果总是1
支持版本及以上
参数描述:
参数名 | 描述 |
---|---|
Date date |
date 日期
|
返回值:
周
参考案例:
//获得指定日期是所在年份的第几周
int weekOfYear = DateUtil.weekOfYear(DateUtil.date());
System.out.println(weekOfYear);
Assert.assertNotNull(weekOfYear);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.weekOfMonth(java.util.Date)
方法描述
获得指定日期是所在月份的第几周<br>
支持版本及以上
参数描述:
参数名 | 描述 |
---|---|
Date date |
date 日期
|
返回值:
周
参考案例:
//获得指定日期是所在月份的第几周
int weekOfMonth = DateUtil.weekOfMonth(DateUtil.date());
System.out.println(weekOfMonth);
Assert.assertNotNull(weekOfMonth);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.dayOfMonth(java.util.Date)
方法描述
获得指定日期是这个日期所在月份的第几天<br>
支持版本及以上
参数描述:
参数名 | 描述 |
---|---|
Date date |
date 日期
|
返回值:
天
参考案例:
//获得指定日期是这个日期所在月份的第几天
int dayOfMonth = DateUtil.dayOfMonth(DateUtil.date());
System.out.println(dayOfMonth);
Assert.assertNotNull(dayOfMonth);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.dayOfYear(java.util.Date)
方法描述
获得指定日期是这个日期所在年的第几天
支持版本及以上
5.3.6
参数描述:
参数名 | 描述 |
---|---|
Date date |
date 日期
|
返回值:
天
参考案例:
//获得指定日期是这个日期所在年的第几天
int dayOfYear = DateUtil.dayOfYear(DateUtil.date());
System.out.println(dayOfYear);
Assert.assertNotNull(dayOfYear);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.dayOfWeek(java.util.Date)
方法描述
获得指定日期是星期几,1表示周日,2表示周一
支持版本及以上
参数描述:
参数名 | 描述 |
---|---|
Date date |
date 日期
|
返回值:
天
参考案例:
//获得指定日期是星期几,1表示周日,2表示周一
int dayOfWeek = DateUtil.dayOfWeek(DateUtil.date());
System.out.println(dayOfWeek);
Assert.assertNotNull(dayOfWeek);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.dayOfWeekEnum(java.util.Date)
方法描述
获得指定日期是星期几
支持版本及以上
参数描述:
参数名 | 描述 |
---|---|
Date date |
date 日期
|
返回值:
{@link Week}
参考案例:
//获得指定日期是星期几
Week dayOfWeekEnum = DateUtil.dayOfWeekEnum(DateUtil.date());
System.out.println(dayOfWeekEnum);
Assert.assertNotNull(dayOfWeekEnum);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.hour(java.util.Date, boolean)
方法描述
获得指定日期的小时数部分<br>
支持版本及以上
参数描述:
参数名 | 描述 |
---|---|
Date date |
date 日期
|
boolean is24HourClock |
is24HourClock 是否24小时制
|
返回值:
小时数
参考案例:
//获得指定日期的小时数部分
boolean is24HourClock = true;
int hour = DateUtil.hour(DateUtil.date(),is24HourClock);
System.out.println(hour);
Assert.assertNotNull(hour);
is24HourClock = false;
hour = DateUtil.hour(DateUtil.date(),is24HourClock);
System.out.println(hour);
Assert.assertNotNull(hour);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.minute(java.util.Date)
方法描述
获得指定日期的分钟数部分<br>
例如:10:04:15.250 =》 4
支持版本及以上
参数描述:
参数名 | 描述 |
---|---|
Date date |
date 日期
|
返回值:
分钟数
参考案例:
//获得指定日期的分钟数部分
int minute = DateUtil.minute(DateUtil.date());
System.out.println(minute);
Assert.assertNotNull(minute);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.second(java.util.Date)
方法描述
获得指定日期的秒数部分<br>
支持版本及以上
参数描述:
参数名 | 描述 |
---|---|
Date date |
date 日期
|
返回值:
秒数
参考案例:
//获得指定日期的秒数部分
int second = DateUtil.second(DateUtil.date());
System.out.println(second);
Assert.assertNotNull(second);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.millisecond(java.util.Date)
方法描述
获得指定日期的毫秒数部分<br>
支持版本及以上
参数描述:
参数名 | 描述 |
---|---|
Date date |
date 日期
|
返回值:
毫秒数
参考案例:
//获得指定日期的毫秒数部分
int millisecond = DateUtil.millisecond(DateUtil.date());
System.out.println(millisecond);
Assert.assertNotNull(millisecond);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.isAM(java.util.Date)
方法描述
是否为上午
支持版本及以上
参数描述:
参数名 | 描述 |
---|---|
Date date |
date 日期
|
返回值:
是否为上午
参考案例:
//是否为上午
boolean isAM = DateUtil.isAM(DateUtil.date());
System.out.println(isAM);
Assert.assertNotNull(isAM);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.isPM(java.util.Date)
方法描述
是否为下午
支持版本及以上
参数描述:
参数名 | 描述 |
---|---|
Date date |
date 日期
|
返回值:
是否为下午
参考案例:
//是否为下午
boolean isPM = DateUtil.isPM(DateUtil.date());
System.out.println(isPM);
Assert.assertNotNull(isPM);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.thisYear()
方法描述
支持版本及以上
参数描述:
参数名 | 描述 |
---|
返回值:
今年
参考案例:
//今年
int thisYear = DateUtil.thisYear();
System.out.println(thisYear);
Assert.assertNotNull(thisYear);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.thisMonth()
方法描述
支持版本及以上
参数描述:
参数名 | 描述 |
---|
返回值:
当前月份
参考案例:
//当前月份
int thisMonth = DateUtil.thisMonth();
System.out.println(thisMonth);
Assert.assertNotNull(thisMonth);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.thisMonthEnum()
方法描述
支持版本及以上
参数描述:
参数名 | 描述 |
---|
返回值:
当前月份 {@link Month}
参考案例:
//当前月份
Month thisMonthEnum = DateUtil.thisMonthEnum();
System.out.println(thisMonthEnum);
Assert.assertNotNull(thisMonthEnum);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.thisWeekOfYear()
方法描述
支持版本及以上
参数描述:
参数名 | 描述 |
---|
返回值:
当前日期所在年份的第几周
参考案例:
//当前日期所在年份的第几周
int thisWeekOfYear = DateUtil.thisWeekOfYear();
System.out.println(thisWeekOfYear);
Assert.assertNotNull(thisWeekOfYear);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.thisWeekOfMonth()
方法描述
支持版本及以上
参数描述:
参数名 | 描述 |
---|
返回值:
当前日期所在月份的第几周
参考案例:
//当前日期所在月份的第几周
int thisWeekOfMonth = DateUtil.thisWeekOfMonth();
System.out.println(thisWeekOfMonth);
Assert.assertNotNull(thisWeekOfMonth);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.thisDayOfMonth()
方法描述
支持版本及以上
参数描述:
参数名 | 描述 |
---|
返回值:
当前日期是这个日期所在月份的第几天
参考案例:
//当前日期是这个日期所在月份的第几天
int thisDayOfMonth = DateUtil.thisDayOfMonth();
System.out.println(thisDayOfMonth);
Assert.assertNotNull(thisDayOfMonth);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.thisDayOfWeek()
方法描述
支持版本及以上
参数描述:
参数名 | 描述 |
---|
返回值:
当前日期是星期几
参考案例:
//当前日期是星期几
int thisDayOfWeek = DateUtil.thisDayOfWeek();
System.out.println(thisDayOfWeek);
Assert.assertNotNull(thisDayOfWeek);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.thisDayOfWeekEnum()
方法描述
支持版本及以上
参数描述:
参数名 | 描述 |
---|
返回值:
当前日期是星期几 {@link Week}
参考案例:
//当前日期是星期几
Week thisDayOfWeekEnum = DateUtil.thisDayOfWeekEnum();
System.out.println(thisDayOfWeekEnum);
Assert.assertNotNull(thisDayOfWeekEnum);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.thisHour(boolean)
方法描述
支持版本及以上
参数描述:
参数名 | 描述 |
---|---|
boolean is24HourClock |
is24HourClock 是否24小时制
|
返回值:
当前日期的小时数部分<br>
参考案例:
//当前日期的小时数部分
is24HourClock = true;
int thisHour = DateUtil.thisHour(is24HourClock);
System.out.println(thisHour);
Assert.assertNotNull(thisHour);
is24HourClock = false;
thisHour = DateUtil.thisHour(is24HourClock);
System.out.println(thisHour);
Assert.assertNotNull(thisHour);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.thisMinute()
方法描述
支持版本及以上
参数描述:
参数名 | 描述 |
---|
返回值:
当前日期的分钟数部分<br>
参考案例:
//当前日期的分钟数部分
int thisMinute = DateUtil.thisMinute();
System.out.println(thisMinute);
Assert.assertNotNull(thisMinute);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.thisSecond()
方法描述
支持版本及以上
参数描述:
参数名 | 描述 |
---|
返回值:
当前日期的秒数部分<br>
参考案例:
//当前日期的秒数部分
int thisSecond = DateUtil.thisSecond();
System.out.println(thisSecond);
Assert.assertNotNull(thisSecond);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.thisMillisecond()
方法描述
支持版本及以上
参数描述:
参数名 | 描述 |
---|
返回值:
当前日期的毫秒数部分<br>
参考案例:
//当前日期的毫秒数部分
int thisMillisecond = DateUtil.thisMillisecond();
System.out.println(thisMillisecond);
Assert.assertNotNull(thisMillisecond);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.yearAndQuarter(java.util.Date)
方法描述
获得指定日期年份和季节<br>
格式:[20131]表示2013年第一季度
支持版本及以上
参数描述:
参数名 | 描述 |
---|---|
Date date |
date 日期
|
返回值:
Quarter ,类似于 20132
参考案例:
String yearAndQuarter = DateUtil.yearAndQuarter(DateUtil.date());
System.out.println(yearAndQuarter);
Assert.assertNotNull(yearAndQuarter);
源码解析:
链接:待补充
方法明细
方法名称:cn.hutool.core.date.DateUtil.yearAndQuarter(java.util.Date, java.util.Date)
方法描述
获得指定日期区间内的年份和季节<br>
支持版本及以上
参数描述:
参数名 | 描述 |
---|---|
Date startDate |
startDate 起始日期(包含)
|
Date endDate |
endDate 结束日期(包含)
|
返回值:
季度列表 ,元素类似于 20132
参考案例:
//获得指定日期区间内的年份和季节
String yearAndQuarter = DateUtil.yearAndQuarter(DateUtil.parse("2018-12-01"));
Assert.assertEquals("20184", yearAndQuarter);
LinkedHashSet<String> yearAndQuarters = DateUtil.yearAndQuarter(DateUtil.parse("2018-09-10"), DateUtil.parse("2018-12-20"));
List<String> list = CollUtil.list(false, yearAndQuarters);
Assert.assertEquals(2, list.size());
Assert.assertEquals("20183", list.get(0));
Assert.assertEquals("20184", list.get(1));
LinkedHashSet<String> yearAndQuarters2 = DateUtil.yearAndQuarter(DateUtil.parse("2018-10-10"), DateUtil.parse("2018-12-10"));
List<String> list2 = CollUtil.list(false, yearAndQuarters2);
Assert.assertEquals(1, list2.size());
Assert.assertEquals("20184", list2.get(0));
源码解析:
链接:待补充
以上是关于3hutool实战:DateUtil-获取日期的各种内容的主要内容,如果未能解决你的问题,请参考以下文章
3hutool源码分析:DateUtil(时间工具类)-获取日期的各种内容
3hutool源码分析:DateUtil(时间工具类)-获取日期的各种内容
3hutool源码分析:DateUtil(时间工具类)-获取日期的各种内容
7hutool实战:DateUtil(时间工具类)-日期计算