java相关日期函数

薄洪涛2年前JAVA1930

JDK7

Data

// 1.创建当前时间
Date d1 = new Date();
System.out.println(d1);

// 2.指定时间
Date d2 = new Date(1000L);
System.out.println(d2);

// 3.修改时间
d2.setTime(2000L);
System.out.println(d2);

// 4.获取毫秒值
long time = d2.getTime();
System.out.println(time);


SimpleDateFormat

image.png

image.png

Date d2 = new Date(1000L);
System.out.println(d2);
// 无参构造
SimpleDateFormat sdf = new SimpleDateFormat();
String formatD2 = sdf.format(d2);
// 有参数构造,传入时间格式
SimpleDateFormat sdfFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String formatD22 = sdfFormat.format(d2);
System.out.println(formatD22);
// 解析
Date date2 = sdfFormat.parse(formatD22);
System.out.println(date2);

Calendar

代表系统当前时间的日历对象,可以单独设置,获取时间中的年月日

  1. Calendar 是一个抽象类,不可以直接创建对象,底层是根据不同的时区来获取不能的日历对象,默认表示当前时间

  2. 获取月份:范围0~11,0代表1月

  3. 获取星期: 1代表周日  2代表周一   依次类推

  4. get() 取字段中某字段信息

Calendar calendar = Calendar.getInstance();
// 纪元
System.out.println(calendar.get(0));
// 年
System.out.println(calendar.get(1));
// 月
System.out.println(calendar.get(2));
// 一年中第几周
System.out.println(calendar.get(3));
// 一月中第几周
System.out.println(calendar.get(5));
// 一月中的第几天
System.out.println(calendar.get(6));

为了方便记忆,使用常量
// 纪元
System.out.println(calendar.get(0));
// 年
System.out.println(calendar.get(Calendar.YEAR));
// 月
System.out.println(calendar.get(Calendar.MONTH));
// 一年中第几周
System.out.println(calendar.get(Calendar.WEEK_OF_YEAR));
// 一月中第几周
System.out.println(calendar.get(Calendar.WEEK_OF_MONTH));
// 一月中的第几天
System.out.println(calendar.get(Calendar.DAY_OF_MONTH));

image.png

Jdk8

JDK7 代码太麻烦,而且多线程不安全

Instant

时间戳

// 获取当前时间的Instant对象(标准时间)
Instant now = Instant.now();
System.out.println(now);
// 指定时区
ZonedDateTime nw = Instant.now().atZone(ZoneId.of("Asia/Shanghai"));
System.out.println(nw);
// 昨天
Instant yesterday = Instant.now().minusSeconds(86400);
System.out.println(yesterday);
// 比较
System.out.println(now.isAfter(yesterday));

DateTimeFormatter

用于时间的格式化和解析

LocalDate

LocalTime

LocalDateTime


相关文章

springboot实现定时任务

springboot实现定时任务

之前做php的时候,如果想做个定时任务,或者想特定时间调用某个脚本/接口,我们都会考虑使用linux的crontab来实现,比较对于单线程脚本语言来说,做定时不是那么容易然后最近因为开始学习java,...

idea 部署Tomcat服务器

idea 部署Tomcat服务器

一、创建一个web项目1.file-new project,选择正确的jdk版本后(没配置的可以先自行google配置),next2.next3.输入项目名字和路径二,创建Module1.鼠标点中项目...

Springboot+Kotlin的搭建

Springboot+Kotlin的搭建

不少公司觉得php的性能较低,于是采用java做逻辑处理,php做表现层的做法,个人觉得对于业务量比较复杂,安全性要求较高的项目,可以采用此类做法;于是我学着搭建了一个基于spring boot的接口...

spring循环依赖

spring循环依赖

什么是循环依赖? 很简单,就是A对象依赖了B对象,B对象依赖了A对象在Spring中,⼀个对象并不是简单new出来了,⽽是会经过⼀系列的Bean的⽣命周期,就是因为 Bean的⽣命周期所以才会出现循环...

centos安装java环境

centos安装java环境

很多工具(比如Lucene )都要依赖java环境,所以我在服务器上装了一个jdk,然后在这篇文章中记录下安装的步骤;当我们修改程序并通过SVN上传到服务器后环境:  &...

微信H5支付安卓提示"商家参数格式有误请联系商家解决"

微信H5支付安卓提示"商家参数格式有误请联系商家解决"

今天遇到一个恼火的问题,我们对接微信的H5支付,采用了前后端分离,后端接口返回了支付的url,ios正常唤起微信支付,android却始终提示商家参数格式有误请联系商家解决,如图按照微信提供的文档,我...

评论列表

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。