java8有很多时间上的新api,在操作时间的时候很好用,这儿算是个备忘录吧,(补充中。。。)

定位某个时间:of方法

LocalDateTime dateTime = LocalDateTime.of(2020, 2, 11, 13, 15, 12);
LocalDate date = LocalDate.of(2020, 2, 11);

计算两个时间的差值(day,hour,minute等)

LocalDateTime dateTime1 = LocalDateTime.of(2020, 2, 11, 13, 15, 12);
LocalDateTime dateTime2 = LocalDateTime.of(2020, 3, 11, 13, 15, 12);
Duration between = Duration.between(dateTime1, dateTime2);
System.out.println(between.toDays());
System.out.println(between.toHours());
System.out.println(between.toMinutes());

对某个时间进行增加或者减少

LocalDateTime dateTime = LocalDateTime.of(2020, 2, 11, 13, 15, 12);
LocalDateTime t1 = dateTime.plusDays(1);
System.out.println(t1);
LocalDateTime t2 = dateTime.plusMonths(1);
System.out.println(t2);

获取某个时间是否为闰年

  

LocalDateTime dateTime = LocalDateTime.of(2020, 2, 11, 13, 15, 12);
boolean leapYear = dateTime.toLocalDate().isLeapYear();
System.out.println(leapYear);
boolean leap = Year.of(2016).isLeap();

获取某月第一天,最后一天以及一共有多少天,以及当前月是第几月

LocalDateTime dateTime = LocalDateTime.of(2020, 2, 11, 13, 15, 12);
YearMonth month = YearMonth.from(dateTime);
LocalDate begin = month.atDay(1);
int length = month.lengthOfMonth();
LocalDate end = month.atEndOfMonth();
int monthValue = month.getMonthValue();

格式化日期

LocalDateTime dateTime = LocalDateTime.of(2020, 2, 11, 13, 15, 12);
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy年MM月dd日");
String r = dateTime.format(formatter);
TemporalAccessor parse = formatter.parse(r);
LocalDate from = LocalDate.from(parse);

java8中的常用日期操作的更多相关文章

  1. 大数据(5) - HDFS中的常用API操作

    一.安装java 二.IntelliJ IDEA(2018)安装和破解与初期配置 参考链接 1.进入官网下载IntelliJ IDEA https://www.jetbrains.com/idea/d ...

  2. Java常用日期操作

    对java中常用的日期操作进行整理. 1.日期格式化 /* * 日期格式化类(必须掌握) * API: * G Era 标志符 Text AD y 年 Year 1996; 96 M 年中的月份 Mo ...

  3. 【转载】java8中的Calendar日期对象(LocalDateTime)

    Java 8 推出了全新的日期时间API,Java 8 下的 java.time包下的所有类都是不可变类型而且线程安全. 下面是新版API中java.time包里的一些关键类: Instant:瞬时实 ...

  4. python中 列表常用的操作

    列表可以装大量的数据,不限制数据类型,表示方式:[]:列表中的元素用逗号隔开. lst = [] #定义一个空列表 lst = ["Tanxu",18,"女", ...

  5. 在MYSQL中插入当前时间,就象SQLSERVER的GETDATE()一样,以及对mysql中的时间日期操作。

    在看sql教程的时候,我学的是mysql,但是教程上面的一点在mysql里面是不支持的,所以就找了其他的替代的办法 sql教程上面是这样的: 通过使用类似 GETDATE() 这样的函数,DEFAUL ...

  6. ajax 中一些常用的操作

    $.post.$.get是一些简单的方法,如果要处理复杂的逻辑,还是需要用到jQuery.ajax() 一.$.ajax的一般格式$.ajax({ type: 'POST', url: url , d ...

  7. iOS中NSDate常用转换操作整合

    //当前时间格式化, 例:YYYY-MM-dd-EEEE-HH:mm:ss + (NSString *)getCurrentDataWithDateFormate:(NSString *)format ...

  8. MYSQL常用日期操作

    mysql查询今天.昨天.7天.近30天.本月.上一月 数据 今天 select * from 表名 where to_days(时间字段名) = to_days(now()); 昨天 SELECT ...

  9. C#中关于常用日期的计算

    void Main() { DateTime dt = DateTime.Now; //当前时间 DateTime startWeek = dt.AddDays( - Convert.ToInt32( ...

随机推荐

  1. C++-对象指针的滥用

    C++ 中经常出现使用对象指针,而不是直接使用对象本身的代码,比如下面这个例子: Object *myObject = new Object; 而不是使用: myObject.testFunc(); ...

  2. 后台执行linux命令

    /** * * 方法说明:移植执行linux命令 * * @param cmdStr 需要执行的linux命令 * @return 执行命令后的输出(如果是启动一个进程,则可能一直无法返回) * @t ...

  3. 【转载】Hibernate映射文件详解

    转自:http://blog.163.com/hzd_love/blog/static/13199988120108265317988/ Hibernate的持久化类和关系数据库之间的映射通常是用一个 ...

  4. Rumor

    Vova promised himself that he would never play computer games... But recently Firestorm — a well-kno ...

  5. awk从放弃到入门(3):awk变量

    一.变量概述 对于awk来说"变量"又分为"内置变量" 和 "自定义变量" , "输入分隔符FS"和"输出分隔 ...

  6. Chrome浏览器支持跨域访问

    创建一个chrome的快捷方式,并加上参数 --allow-file-access-from-files --disable-web-security --user-data-dir="D: ...

  7. HTML学习(7)格式化标签

    对文本格式进行编辑的标签.常用: <b>加粗文本</b> <strong>加重语气</strong>   与<b>效果一样,<stro ...

  8. HTML学习(3)基础

    *开始标签常被称为起始标签(opening tag),结束标签常称为闭合标签(closing tag). *虽然有时候忘记写结束标签有的浏览器也能正常显示内容,但有时候会出现不可预料的结果或错误,所以 ...

  9. python 递归调用 返回值问题

    当使用递归时并有返回值时,调用自身函数时需要加上return语句如下: def daxiao(biao1,biao2):     #判断两个列表的大小,根据里面的元素大小     #如果biao1大于 ...

  10. 445. 两数相加 II

    Q: A: 这种题的用例是一定会搞一些很大的数的.long都会溢出,所以我们就不用尝试转数字做加法转链表的方法了.另外直接倒置两个链表再做加法的做法会改变原链表,题干也说了禁止改动原链表. 1.求两个 ...