Java之时间类
时间类
Date类
- ZonedDateTime: 带时区的时间
- ZoneId: 带时区
- Instant: 时间戳
日期格式化类
SimpleDateFormat
- DateTimeFormatter
Date d1 = new Date();
System.out.println(d1);
SimpleDateFormat smt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(smt.format(d1));
日历类
Calendar
- LocalDateTime 年月日时分秒(重点)
- LocalDate 年月日
- LocalTime 时分秒
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDate d2= LocalDate.now();
LocalDateTime d4 = LocalDateTime.now();
LocalTime t1 = LocalTime.now();
String format = LocalDateTime.now().format(
DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")
); // datetime转字符串
// 不会改变原始值大小,会生成一个新的日期对象
d4.getYear(); // 获取
LocalDateTime d5 = d4.withYear(2000);// 修改
System.out.println("d5:" + d5.format(formatter));
LocalDateTime d6 = d4.minusYears(2);// 减少
System.out.println("d6:"+ d6.format(formatter));
LocalDateTime d7 = d4.plusYears(2);// 增加
System.out.println("d7:" + d7.format(formatter));
工具类
- Duration :时间间隔(秒、纳秒)
- Period:时间间隔(时分秒)
- ChronoUnit:时间间隔(所有)重点
package com.lty;
import java.time.LocalDateTime;
import java.time.temporal.ChronoUnit;
public class ChronoUnitDemo {
public static void main(String[] args) {
LocalDateTime today = LocalDateTime.now();
LocalDateTime birthDate = LocalDateTime.of(2000, 5, 21, 0, 0, 0, 0);
System.out.println("相差的年数: " + ChronoUnit.YEARS.between(birthDate,today));
System.out.println("相差的月数: " + ChronoUnit.MONTHS.between(birthDate,today));
System.out.println("相差的周数: " + ChronoUnit.WEEKS.between(birthDate,today));
System.out.println("相差的天数: " + ChronoUnit.DAYS.between(birthDate,today));
System.out.println("相差的时数: " + ChronoUnit.HOURS.between(birthDate, today));
System.out.println("相差的分数: " + ChronoUnit.MINUTES.between(birthDate, today));
System.out.println("相差的秒数: " + ChronoUnit.SECONDS.between(birthDate,today));
System.out.println("相差的毫秒数: " + ChronoUnit.MILLIS.between(birthDate,today));
System.out.println("相差的微秒数: " + ChronoUnit.MICROS.between(birthDate,today));
System.out.println("相差的纳秒数: " + ChronoUnit.NANOS.between(birthDate, today));
System.out.println("相差的半天数: " + ChronoUnit.HALF_DAYS.between(birthDate, today));
System.out.println("相差的十年数: " + ChronoUnit.DECADES.between(birthDate,today));
System.out.println("相差的世纪有年数: " + ChronoUnit.CENTURIES.between(birthDate,today));
System.out.println("相差的千年数: " + ChronoUnit.MILLENNIA.between(birthDate,today));
System.out.println("相差的纪元数: " + ChronoUnit.ERAS.between(birthDate,today));
}
}
Java之时间类的更多相关文章
- Java基础-时间类
关于java中六个时间类的使用和区别 java.util.Date java.sql.Date ,java.sql.Time , java.sql.Timestamp java.text.Simple ...
- Java日期时间类
日期时间类有三种: 一.java.util.Date:一般用于声明日期时间类型的变量. 二.java.sql.Date:一般用于数据库日期时间的映射. 三.java.util.Calendar:一般用 ...
- Java中时间类中的Data类与Time类
小简博客 - 小简的技术栈,专注Java及其他计算机技术.互联网技术教程 (ideaopen.cn) Data类 Data类中常用方法 boolean after(Date date) 若当调用此方法 ...
- java新时间类
时间 java8以前使用的时间很多方法都已经废弃了,而且不是线程安全的,java8提供了一系列的时间类,这些时间类都是线程安全的 LocalDate.LocalTime.LocalDateTime 这 ...
- Java学习 时间类 Period类与Duration类 / LocalDate类与Instant类 用法详解
前言 java 8 中引入的两个与日期相关的新类:Period 和 Duration.两个类看表示时间量或两个日期之间的差,两者之间的差异为:Period基于日期值,而Duration基于时间值.他们 ...
- java最全时间类及用法
对于时间类,这篇主要说明各种现实情况下如何取值,怎么定向取值,得到自己想要的时间参数.在java中时间类主要有Date.Calendar,暂时只介绍 java.util.*下的时间类,对于java.s ...
- java时间类Date、Calendar及用法
对于时间类,这篇主要说明各种现实情况下如何取值,怎么定向取值,得到自己想要的时间参数.在java中时间类主要有Date.Calendar,暂时只介绍 java.util.*下的时间类,对于java.s ...
- Java日期时间API系列3-----Jdk7及以前的日期时间类的不方便使用问题
使用Java日期时间类,每个人都很熟悉每个项目中必不可少的工具类就是dateutil,包含各种日期计算,格式化等处理,而且常常会遇到找不到可用的处理方法,需要自己新增方法,处理过程很复杂. 1.Dat ...
- Java中六大时间类的使用和区别
关于java中六个时间类的使用和区别 java.util.Date java.sql.Date java.sql.Time java.sql.Timestamp java.text.SimpleD ...
- java时间类简单总结
java时间类(Data类) 1.Data类(没有考虑到国际化,好多方法已过时java.util.Data包中) 父类(是类不是接口含有直接子类3个): 日期格式为:年月日时分秒(不包含毫秒部分) ...
随机推荐
- 阿里云服务器ECS(Centos8)下安装和配置python3.8
1.安装依赖包: yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-dev ...
- 浏览器控件webBrowser
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- 如何优雅地写LCD接口的使用
通过面向对象方法进行实现,可以多学习 参考链接: http://www.wujique.com/2021/05/16/lcd%e9%a9%b1%e5%8a%a8%e5%ba%94%e8%af%a5%e ...
- Centos7安装Docker 及 Docker-compose
1.安装环境 此处在Centos7进行安装,可以使用以下命令查看CentOS版本 lsb_release -a 在 CentOS 7安装docker要求系统为64位.系统内核版本为 3.10 以上,可 ...
- 【面试题】 用vue想要拿20k,面试题要这样回答(源码版)
总结给大家推荐一个实用面试题库 1.前端面试题库 (面试必备) 推荐:★★★★★ 地址:前端面试题库 2.前端技术导航大全 推荐:★★★★★ 地址:前端技术导航大全 ...
- java 内存锁
import lombok.extern.slf4j.Slf4j;import java.util.Map;import java.util.concurrent.ConcurrentHashMap; ...
- 【Python】【算法】【排序】用Python实现排序的三种算法
class SortTest: def __init__(self): pass # 冒泡排序 def BubbleSort(self, value): if isinstance(value, li ...
- C++ 手动实现栈(stack) (课后作业版)
栈,一种遵循先进先出原则的数据结构,可以用顺序表实现,也可以用链表进行实现. 这里我使用数组实现方法,包含了进栈,出栈,访问栈顶等功能,以及一些辅助功能. 栈Stack类定义如下: template ...
- 【Frida】打印方法的调用堆栈
function printstack() { console.log(Java.use("android.util.Log").getStackTraceString(Java. ...
- Linxu后台运行Java的jar包
1.直接运行 java -jar myjar-0.0.1-SNAPSHOT.jar 这种方式需要一直挂载终端(Ctrl+C会结束进程.关闭shell也会结束进程),故不符合需求 2.后台运行 A.Ct ...