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世界时 ...
随机推荐
- WPF---数据绑定之ValidationRule数据校验(六)
一.概述 我们知道,Binding好比架设在Source和Target之间的桥梁,数据可以借助这个桥梁进行流通.在数据流通的过程中,我们可以在Binding这座桥梁上设置关卡,对数据的有效性进行验证. ...
- 二:Servlet简介
一.Servlet简介 1.什么是Servlet Servlet 运行在服务端的Java小程序,是sun公司提供一套规范(接口),用来处理客户端请求.响应给浏览器的动态资源.但servlet的实质就是 ...
- 嵌入式Linux的启动过程
1.了解 Linux 最初是由瑞典赫尔辛基大学的学生 Linus Torvalds在1991 年开发出来的,之后在 GNU的支持下,Linux 获得了巨大的发展.虽然 Linux 在桌面 PC 机上的 ...
- 模拟文件上传(二):使用apache fileupload组件进行文件上传
其中涉及到的jar包: jsp显示层: <%@ page language="java" import="java.util.*" pageEncodin ...
- mybatis根据表逆向自动化生成代码(自动生成实体类、mapper文件、mapper.xml文件)
.personSunflowerP { background: rgba(51, 153, 0, 0.66); border-bottom: 1px solid rgba(0, 102, 0, 1); ...
- C# ArrayPool 源码解读之 byte[] 池化
一:背景 1. 讲故事最近在分析一个 dump 的过程中发现其在 gen2 和 LOH 上有不少size较大的free,仔细看了下,这些free生前大多都是模板引擎生成的html片段的byte[]数组 ...
- SpringBoot笔记(3)
一.配置文件 1.文件类型 1.1.properties 同以前的properties用法 1.2.yaml 1.2.1.简介 YAML 是 "YAML Ain't Markup Langu ...
- (六)羽夏看C语言——函数
写在前面 由于此系列是本人一个字一个字码出来的,包括示例和实验截图.本人非计算机专业,可能对本教程涉及的事物没有了解的足够深入,如有错误,欢迎批评指正. 如有好的建议,欢迎反馈.码字不易,如果本篇 ...
- java 多线程Thread和Runnable的区别
如果一个类继承Thread,则不适合资源共享.但是如果实现了Runable接口的话,则很容易的实现资源共享 实现Runnable接口比继承Thread类所具有的优势:1. 适合多个相同的程序代码的线程 ...
- 【曹工杂谈】Maven底层容器Plexus Container的前世今生,一代芳华终落幕
Maven底层容器Plexus Container的前世今生,一代芳华终落幕 前言 说实话,我非常地纠结,大家平时只是用Maven,对于内部的实现其实也不关心,我现在非要拉着大家给大家讲.这就有个问题 ...