java8中的常用日期操作

雨落寒沙      2022-05-10     696

关键词:

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);

 

一起talkandroid吧(第四百三十一回:java8中的日期类)(代码片段)

...各位看官们大家好,上一回中咱们说的例子是"Java8中的日期和时间概述",这一回中咱们说的例子是"Java8中的日期类"。闲话休提,言归正转,让我们一起TalkAndroid吧!在Java8中使用LocalDate类表示日期类ÿ... 查看详情

java8中时间日期库的20个常用使用示例

除了lambda表达式,stream以及几个小的改进之外,Java8还引入了一套全新的时间日期API,在本篇教程中我们将通过几个简单的任务示例来学习如何使用Java8的这套API。Java对日期,日历及时间的处理一直以来都饱受诟病,尤其是它决... 查看详情

java中常用日期操作及方法

...以下都可以用。一、Dateformat类的常用格式y年Year1996;96 M年中的月份MonthJuly;Jul;07 w年中的周数Number27 W月份中的周数Number2 D年中的天数Number189 d月份中的天数Number10 F月份中的星期Number2 E星期中的天数TextTuesday;Tue a 查看详情

一起talkandroid吧(第四百三十六回:java8中的日期时间格式类)(代码片段)

...各位看官们大家好,上一回中咱们说的例子是"Java8中的时间戳类",这一回中咱们说的例子是"Java8中的日期时间格式类"。闲话休提,言归正转,让我们一起TalkAndroid吧!在Java8中使用DateTimeFormatter类来对日... 查看详情

java8时间类常用方法

//当前日期LocalDatedate=LocalDate.now();//2020-07-12//年月日intyear=date.getYear();//2020intmonth=date.getMonthValue();//7intday=date.getDayOfMonth();//12//指定日期LocalDatenewDate=LocalDate. 查看详情

java8常用的流操作

以下都是我从《java8函数式编程》看到的,collect(toList())collect(toList())方法是由stream里面的值生成的一个列表,是一个及早求值的操作。List<Integer>list=Stream.of(1,2,3,4,5,).collect(Collectors.toList());assertEquals(Arrays.asList(1,2,3,,4, 查看详情

java8新特性学习六(新时间日期api)

在java8以前,做有关时间日期的操作时使用java.util.Date,做日期、月份、天数相加减操作时使用java.util.Calendar,对时间日期进行格式化操作时,使用SimpleDateFormat或DateFormat下的其他子类;但是这些时间日期操作对象,都是可变的、... 查看详情

java8completablefuture常用的异步操作

IntStream//类似for循环for(inti=0;i<3;i++)IntStreamintStream=IntStream.range(0,3);supplyAsync运行一个异步任务并且返回结果当任务不需要返回任何东西的时候可以使用CompletableFuture.runAsync()CompletableFuture<String>f 查看详情

java8中的常用函数式接口

原文链接:java8中的常用函数式接口函数式接口表达式拓展备注PredicateT->booleanDoublePredicateIntPredicateLongPredicate谓词ConsumerT->voidDoubleConsumerIntConsumerLongConsumer消费Function<T,R>T->RDoubleFunction<R> 查看详情

java8stream流api常用操作

...作集合的Stream流,函数式编程等等;这里就按操作例举一些常用的Stream流操作;Stream流简介Asequenceofelementssupportingsequentialandparallelaggregateoperations.Stream流是 查看详情

java8常用新特性

  1、Lambda表达式(把代码当作参数)  //定义了操作接口publicinterfaceGreetingService{voidsayMessage(Stringmessage);}//声明接口的具体操作GreetingServicegreetService1=message->System.out.println("Hello"+message);//调用接口,使用功能g 查看详情

java8stream流使用场景和常用操作(代码片段)

 JAVA8内置的函数式编程接口应用场景和方式  pojo类对象和默认创建list的方法importlombok.AllArgsConstructor;importlombok.Data;importlombok.NoArgsConstructor;importjava.util.ArrayList;importjava.util.List;@Data@AllArgs 查看详情

java8-新的时间日期api示例

...全新的时间和日期API,并且都是线程安全的新时间日期API常用对象介绍    LocalDate:表示没有时区的日期,LocalDate是不可变且线程安全    LocalTime:表示没有时区的时间,LocalTime是不可变且线程安全    LocalDateTime:表示没... 查看详情

一起talkandroid吧(第四百三十三回:java8中的日期时间类)(代码片段)

...各位看官们大家好,上一回中咱们说的例子是"Java8中的时间类",这一回中咱们说的例子是"Java8中的日期时间类"。闲话休提,言归正转,让我们一起TalkAndroid吧!在Java8中使用LocalDateTime类表示日期时间类&... 查看详情

高级java开发必备技能:java8新日期时间api(jsr-310:常用的日期时间api)(java小虚竹)(代码片段)

...篇来写。闲话就聊到这,请看下面的正文。文章目录常用的日期时间API简介ClockClock类说明FixedClockClock.fixedClock.fixed跟Offset方法更配OffsetClockSystemClockClock.systemDefaultZone()Clock.systemUTC()结论TickClockInstantInstant类说明Instant常用的用法... 查看详情

java基础学习总结(195)——关于java8中的日期处理总结

...果不对其进行格式化可读性十分很差,而Simpledateformat类中的 format和parse方法都是线程不安全的。Java8之后出现了LocalDate,LocalDateTime,LocalTime这些类,而这些类使用 查看详情

java基础学习总结(195)——关于java8中的日期处理总结

...果不对其进行格式化可读性十分很差,而Simpledateformat类中的 format和parse方法都是线程不安全的。Java8之后出现了LocalDate,LocalDateTime,LocalTime这些类,而这些类使用 查看详情

java8常用时间api

...了一套新的时间api,比之前的Calendar类要简单明了很多。常用的有三个类Instant、LocalDate、LocalDateTime,Instant是用来表示时刻的,类似Unix的时间,表示从协调世界时1970年1月1日0时0分0秒起至现在的总秒数,也可以获取毫秒。LocalDate... 查看详情