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#多线程---Semaphore实现线程同步
一.简介 Semaphore类限制可同时访问某一资源或资源池的线程数.线程通过调用 WaitOne方法将信号量减1,并通过调用 Release方法把信号量加1. 构造函数:public Semapho ...
- 这些经常被忽视的SQL错误用法,你有没有踩过坑?
之前已经讲过mysql的性能优化,感兴趣的朋友可以看看之前的文章,<史上最全的MySQL高性能优化实战总结!>.但是有些问题其实是我们自身的SQL语句有问题导致的.今天就来总结哪些经常被我 ...
- LeetCode通关:连刷三十九道二叉树,刷疯了!
分门别类刷算法,坚持,进步! 刷题路线参考:https://github.com/youngyangyang04/leetcode-master 大家好,我是拿输出博客来督促自己刷题的老三,这一节我们 ...
- 前后端数据交互(二)——原生 ajax 请求详解
一.ajax介绍 ajax 是前后端交互的重要手段或桥梁.它不是一个技术,是一组技术的组合. ajax :a:异步:j:js:a:和:x:服务端的数据. ajax的组成: 异步的 js 事件 其他 j ...
- docker入门及常用命令
Docker简介 Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布 ...
- Ordering the Soldiers 题解
CodeChef:ORDERS 简化题意: \(n\) 个人排队,给定每个人需要向左移动几个,求最终排列. 即还原逆序对. 错误想法 既然知道每个人向左移动 \(a_i\) 个,那就相当于让他的排名 ...
- dubbo 2.7应用级服务发现踩坑小记
本文已收录 https://github.com/lkxiaolou/lkxiaolou 欢迎star. 背景 本文记录最近一位读者反馈的dubbo 2.7.x中应用级服务发现的问题,关于dubbo应 ...
- elementui table的新增,编辑和删除
\ 新增 this.tableData.unshift(data); 编辑 this.$set(this.tableData,data.index,data); 删除 rows.splice(inde ...
- jQuery判断多种数据类型
1.判断是否为数组类型 var obj=[0]; alert((typeof obj=='object')&&obj.constructor==Array) 2. 判断是否为字符串 ...
- SpringBoot自定义初始化Bean+HashMap优化策略模式实践
策略模式:定义了算法族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户. 传统的策略模式一般是创建公共接口.定义公共方法-->然后创建实体类实现公共接口.根据各自的 ...