Hutool时间和日期相关工具
日期时间工具
获取当前时间(1)
public class HDateAndTime {
public static void main(String[] args) {
//获取当前时间
Date date= DateUtil.date();
System.out.println(date);
}
}

获取当前时间(2)
public class HDateAndTime {
public static void main(String[] args) {
//获取当前时间
Date date= DateUtil.date(Calendar.getInstance());
System.out.println(date);
}
}

获取当前时间(3)
public class HDateAndTime {
public static void main(String[] args) {
//获取当前时间
Date date= DateUtil.date(System.currentTimeMillis());
System.out.println(date);
}
}

获取当时间(字符串类型)
public class HDateAndTime {
public static void main(String[] args) {
//获取当前时间
String dateString=DateUtil.now();
System.out.println(dateString);
}
}

获取当前日期(字符串类型)
public class HDateAndTime {
public static void main(String[] args) {
//格式化时间字符串,格式yyyy-MM-dd
String today=DateUtil.today();
System.out.println(today);
}
}

日期/时间字符串转化为时间类型
/**
* yyyy/MM/dd HH:mm:ss
* yyyy.MM.dd HH:mm:ss
* yyyy年MM月dd日 HH时mm分ss秒
* yyyy-MM-dd
* yyyy/MM/dd
* yyyy.MM.dd
* HH:mm:ss
* HH时mm分ss秒
* yyyy-MM-dd HH:mm
* yyyy-MM-dd HH:mm:ss.SSS
* yyyyMMddHHmmss
* yyyyMMddHHmmssSSS
* yyyyMMdd
* EEE, dd MMM yyyy HH:mm:ss z
* EEE MMM dd HH:mm:ss zzz yyyy
* yyyy-MM-dd'T'HH:mm:ss'Z'
* yyyy-MM-dd'T'HH:mm:ss.SSS'Z'
* yyyy-MM-dd'T'HH:mm:ssZ
* yyyy-MM-dd'T'HH:mm:ss.SSSZ
*
**/
public class HDateAndTime {
public static void main(String[] args) {
String dateStr = "2021-12-12";
Date date = DateUtil.parse(dateStr,"yyyy-MM-dd");
System.out.println(date);
}
}

把一个字符串时间格式化为不同的形式
public class HDateAndTime {
public static void main(String[] args) {
String dateStr="2021-12-12";
Date date=DateUtil.parse(dateStr);
String format=DateUtil.format(date,"yyyy/MM/dd");
System.out.println(format);
}
}

只获取Date对象的某一个部分
public class HDateAndTime {
public static void main(String[] args) {
Date date=DateUtil.date();
System.out.println("date:"+date);
Integer year=DateUtil.year(date);
Integer month=DateUtil.month(date);
Month monthEnum=DateUtil.monthEnum(date);
System.out.println("year:"+year);
System.out.println("month:"+month);
System.out.println("monthEnum:"+monthEnum);
}
}

时间日期偏移:日期或者时间的偏移针对对某一个日期增加或减少时,分,秒等等达到更变时间的效果。
public class HDateAndTime {
public static void main(String[] args) {
String dateStr = "2017-03-01 22:23:33";
Date date = DateUtil.parse(dateStr); System.out.println("date:" + date);
Date date1 = DateUtil.offset(date, DateField.DAY_OF_MONTH, 2);
System.out.println("date时间推迟两天后为:"+date1);
Date date2=DateUtil.offsetDay(date,3);
System.out.println("date时间推迟3天后为:"+date2);
//等等,非常的多.
}
}


获取最近几天的时间
public class HDateAndTime {
public static void main(String[] args) {
//昨天
System.out.println(DateUtil.yesterday());
//今天
System.out.println(DateUtil.today());
//明天
System.out.println(DateUtil.tomorrow());
//上周
System.out.println(DateUtil.lastWeek());
//上月
System.out.println(DateUtil.lastMonth());
//下周
System.out.println(DateUtil.nextWeek());
//下月
System.out.println(DateUtil.nextMonth());
}
}

日期时间差
public class HDateAndTime {
public static void main(String[] args) {
String dateStr1 = "2017-03-01 22:33:23";
Date date1 = DateUtil.parseDate(dateStr1); String dateStr2 = "2021-12-12 12:12:12";
Date date2 = DateUtil.parseDate(dateStr2); Long days = DateUtil.betweenDay(date1, date2, false);
System.out.println("相差" + days + "天"); Long months = DateUtil.betweenMonth(date1, date2, false);
System.out.println("相差" + months + "月"); Long years=DateUtil.betweenYear(date1,date2,false);
System.out.println("相差" + years + "年");
}
}

星座,属相,年龄,闰月
public class HDateAndTime {
public static void main(String[] args) {
//星座
System.out.println(DateUtil.getZodiac(11,27));
//属相
System.out.println(DateUtil.getChineseZodiac(1999));
//年龄
System.out.println(DateUtil.ageOfNow("1999-11-27"));
//是否为闰年
System.out.println(DateUtil.isLeapYear(1999));
}
}

13. 计时器工具
```java
public class HDateAndTime {
public static void main(String[] args) {
//定义一个计时器
TimeInterval timer = DateUtil.timer();
//------------开始执行--------
timer.start();
for (int i = 0; i < 100000; i++) {
Random r=new Random(10086);
r.nextInt();
}
System.out.println(timer.interval());//花费毫秒数
timer.intervalRestart();//返回花费时间,并充值时间
timer.intervalMinute();//花费分钟数
}
}
```

Hutool时间和日期相关工具的更多相关文章
- Android随笔之——Android时间、日期相关类和方法
今天要讲的是Android里关于时间.日期相关类和方法.在Android中,跟时间.日期有关的类主要有Time.Calendar.Date三个类.而与日期格式化输出有关的DateFormat和Simp ...
- Lua库之时间和日期操作
Lua库之时间和日期操作 (2010-02-07 18:41:20) 转载▼ os.time() <== 返回当前系统的日历时间os.date() <== 返回本地化的时间字符串,这里是& ...
- date 显示或设置系统时间和日期
显示或设置系统时间和日期 date [options] [+format] date [options] [new date] date用来显示系统的时间和日期,超级用户可以使用date来更改系统时钟 ...
- java时间和日期类型
在java中,代表时间和日期的类型包括:java.util.Date和java.util.Calendar,此外,在JDBC API中还提供了3个扩展类,java.UtilDate类的子类:java. ...
- iOS中的时间和日期
怎么说?时间和日期不是了不起的属性.了不起的功能,但是,我们决不能够因此就“冷落”它. 一:怎么“搞到货”--如何获取时间.日期 //-=-==当前时间------默认显示“0时区”时间 NSDate ...
- Python 时间和日期模块的常用例子
获取当前时间的两种方法 import datetime,time now = time.strftime("%Y-%m-%d %H:%M:%S") print now now = ...
- Java 对时间和日期的相关处理
1. 获取当前系统时间和日期并格式化输出 import java.util.Date; import java.text.SimpleDateFormat; public class NowStrin ...
- PHP date 格式化一个本地时间/日期
PHP date 格式化一个本地时间/日期 date (PHP 4, PHP 5) date — 格式化一个本地时间/日期 说明 string date ( string $format [, int ...
- java JDK8 学习笔记——第13章 时间与日期
第十三章 时间与日期 13.1 认识时间与日期 13.1.1 时间的度量 1.格林威治标准时间GMT 格林威治标准时间的正午是太阳抵达天空最高点之时.现在已经不作为标准时间使用. 2.世界时UT世界时 ...
随机推荐
- C#与.NET、CLR、CLI是什么关系?什么是.NET框架
1.C#与.NET.CLR.CLI是什么关系?什么是.NET框架? 这个问题好专业啊!一句话两句话还真不好说清.您听说过C++中有个COM的概念吧?您听说过JAVA里的虚拟机吧?CLR(公共 ...
- vue2.0中模拟数据的配置
在开发过程中,有时候接口跟不上我们的进度,我们要测试,就需要自测. 现在vue已经升级到2.0版本了,早期在vue构建工程文件在build里面有dev-server.js,但是后来构建去除了该文件集成 ...
- 刷题-力扣-122. 买卖股票的最佳时机 II
122. 买卖股票的最佳时机 II 题目链接 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/best-time-to-buy-and-sell ...
- Python之win32模块
如果想在Windows操作系统上使用Python去做一些自动化工作,pywin32模块常常会被用到,它方便了我们调用Windows API. 安装及使用 通过命令pip install pywin32 ...
- Redis核心原理与实践--字符串实现原理
Redis是一个键值对数据库(key-value DB),下面是一个简单的Redis的命令: > SET msg "hello wolrd" 该命令将键"msg&q ...
- 开源自己编写的半人工标注平台PaddleOCRLabel(.NET Winform版本)
大家好, 我是博客园的老用户了,许久不做.NET技术了,从2013年起,开始从事App技术,写过书,在Linux上搭建区块链,用GO写智能合约,使用nodejs搭建过微服务,用python写过爬虫,写 ...
- java版gRPC实战之四:客户端流
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- TypeScript 中命名空间与模块的理解?区别?
一.模块 TypeScript 与ECMAScript 2015 一样,任何包含顶级 import 或者 export 的文件都被当成一个模块 相反地,如果一个文件不带有顶级的import或者expo ...
- C# 动态构建表达式树(二)——构建 Select 和 GroupBy 的表达式
C# 动态构建表达式树(二)--构建 Select 和 GroupBy 的表达式 前言 在上篇中写了表达式的基本使用,为 Where 方法动态构建了表达式.在这篇中会写如何为 Select 和 Gro ...
- Django学习day01随堂笔记
每日测验 """ 每日测验 1.你所知道的前端框架和实用插件有哪些,他们各有什么特点 2.使用bootstrap需要注意什么,常用的bootstrap样式有哪些 &quo ...