Java LocalDateTime,DateTimeFomatter----JDK8新时间类的简单使用
JDK8中增加了一系列时间的类,
(据说)是为了干掉过去的Date,Calendar类的,
过去的Date类(据说)有着线程不安全等诸多弊端,
至于我的个人感受就是用起来实在是很麻烦,我一般封装成几个常用的方法以后每次就调方法,再也不想看里面是怎么实现的了.
而发现了LocalDateTime这种新类以后,经过我的简单的试用,觉得完全可以取代掉之前使用时间的一切方法.非常好用,太好用了.
下面是简单的使用教程:
1,按照自由格式获取当前时间
public static String getTodayByFormat(String timeFormat){
return LocalDateTime.now().format(DateTimeFormatter.ofPattern(timeFormat));
}
简直优雅,甚至我都不想封装成方法了,想用随时写,就是这么容易.
2,获取当前年/月/日
一张图说明,想怎么取,想怎么拼,都随便
3,获取前一天
从前我的笨方法是:
public static String getYesterdayByFormat(String timeFormat){
//获取当前日期
Date date = new Date();
SimpleDateFormat sf = new SimpleDateFormat(timeFormat);
//通过秒获取下一天日期
long time = (date.getTime() / 1000) - 60 * 60 * 24;//秒
date.setTime(time * 1000);//毫秒
String yesterday = sf.format(date).toString();
return yesterday;
}
如今有了新方法:
public static String getYesterdayByFormat(String timeFormat){
return LocalDateTime.now().plusDays(1).format(DateTimeFormatter.ofPattern(timeFormat));
}
同理,我都不想为获取X天后/X小时后单独写方法了,就在下面(以增加为例):
返回值是LocalDateTime,也就意味着可以一直链式点下去,想要多少天以后的数据尽管开口,一句写不完算我输.
4,获取已经度过的毫秒/秒
为啥一个是to一个是get我也不是很明白
其他更多的我还没用,感觉用不到了,有需要再去查就是了.
Java LocalDateTime,DateTimeFomatter----JDK8新时间类的简单使用的更多相关文章
- Java 线程安全LocalTime 和LocaldateTime 新的Date和Time类 -JDK8新时间类的简单使用
不可变类且线程安全 LocalDate .java.time.LocalTime 和LocaldateTime 新的Date和Time类 DateTimeFormatter ==https://ww ...
- springboot Thymeleaf中格式化jsr310新日期时间类(LocalDateTime,LocalDate)--thymeleaf格式化LocalDateTime,LocalDate等JDK8新时间类
依赖maven包 <dependency> <groupId>org.thymeleaf.extras</groupId> <artifactId>th ...
- java新时间类
时间 java8以前使用的时间很多方法都已经废弃了,而且不是线程安全的,java8提供了一系列的时间类,这些时间类都是线程安全的 LocalDate.LocalTime.LocalDateTime 这 ...
- Java中关于Date等日期类的简单使用
Date Date类不常用,很多方法被废弃了,常用它的两个构造方法来new一个Date对象. Date d1 = new Date(); //不传任何参数,代表当前时间点 System.out.pri ...
- 一次电话Java面试的问题总结(JDK8新特性、哈希冲突、HashMap原理、线程安全、Linux查询命令、Hadoop节点)
面试涉及问题含有: Java JDK8新特性 集合(哈希冲突.HashMap的原理.自动排序的集合TreeSet) 多线程安全问题 String和StringBuffer JVM 原理.运行流程.内部 ...
- Java时间类总结
java.util.Date 包含有年月日时分秒,精确到毫秒级别. 官方解释: // The class Date represents a specific instant in time, wit ...
- java.util.Date和jdk1.8新时间API比拼
旧的时间和日期的API的缺陷 Java 的 java.util.Date 和 java.util.Calendar 类易用性差,不支持时区,而且都不是线程安全的. Date如果不格式化,打印出的日期可 ...
- Java中时间类中的Data类与Time类
小简博客 - 小简的技术栈,专注Java及其他计算机技术.互联网技术教程 (ideaopen.cn) Data类 Data类中常用方法 boolean after(Date date) 若当调用此方法 ...
- 10.3(Java学习笔记)JDBC时间操作
一.时间分类 数据库 java类 Date ---- java.sql.Date 表示日期 yyyy-MM--dd (年月日) Time ----java.sql.Time 表示 ...
随机推荐
- <转>jmeter(二)录制脚本
本博客转载自:http://www.cnblogs.com/imyalost/category/846346.html 个人感觉不错,对jmeter讲解非常详细,担心以后找不到了,所以转发出来,留着慢 ...
- linux上限值网速、限值带宽
Linux操作系统中的流量控制器TC(Traffic Control)用于Linux内核的流量控制,主要是通过在输出端口处建立一个队列来实现流量控制. Linux流量控制的基本原理如下图所示. 接收包 ...
- Hadoop学习笔记之一:Hadoop IPC
因为某些原因需要把前一段时间对Hadoop(版本基于0.20.2)的学习积累搬到这里,成为一个系列.写得会很简单,只为必要时给自己提醒. IPC框架 所有Hadoop协议接口的实现都依赖Hadoop ...
- python初学者必看的学习路线
Python是近几年比较火的编程语言之一,因为人工智能的火爆,让很多人都想从事python开发.很多零基础学员在学习python的时候都会走一些弯路,下面小编就为大家分享python学习路线图,帮助零 ...
- JS中常见原生DOM操作API
摘自:https://blog.csdn.net/hj7jay/article/details/53389522 几种对象 Node Node是一个接口,中文叫节点,很多类型的DOM元素都是继承于它, ...
- jsp与后台交换数据(安全目录外)
function changebasin(rivername,codepollute){ $.ajax({ type: "POST", url: "${ctx}/wate ...
- javaweb笔记—04(预编译和泛型)
预编译:ps对象1.ps可进行预编译,占位符传值,性能高于sta的(数据库驱动层有优化)2.比较灵活,数据库将预编译的SQL缓存了,第二次访问,就不用预编译,直接执行.3.较为安全,不会发生SQL注入 ...
- django中的模型详解-1
在说明django模型之前,首先来说明一下django的生命周期,也就是一个请求到达django是如何处理的.[暂时不包含中间件] 浏览器的请求---->到达django中的urls中找到对应的 ...
- kivy中bind的使用
一般在kivy中使用bind()来绑定回调函数,所谓回调函数,个人理解就是一个预先定义好的方法, 因为APP是静态的, 需要等待用户进行操作, 特定的操作背后都绑定了特定的回调函数, 一般有两种类型: ...
- 【题解】Luogu P2604 [ZJOI2010]网络扩容
原题传送门:P2604 [ZJOI2010]网络扩容 这题可以说是板题 给你一个图,先让你求最大流 再告诉你,每条边可以花费一些代价,使得流量加一 问至少花费多少代价才能使最大流达到k 解法十分简单 ...