http://www.yiibai.com/java8/java8_temporaladjusters.html

本文介绍如何使用Java8的TemporalAdjusters进行复杂的日期计算,包括获取当前日期、下个星期二及次月第二个星期六等场景。

原文:http://www.yiibai.com/java8/java8_temporaladjusters.html

 

 

TemporalAdjuster 是做日期数学计算。例如,要获得“本月第二个星期六”或“下周二”。

让我们来看看他们的操作。

选择使用任何编辑器创建以下java程序在 C:/> JAVA

Java8Tester.java

import java.time.LocalDate;
import java.time.temporal.TemporalAdjusters;
import java.time.DayOfWeek;

public class Java8Tester {
   public static void main(String args[]){
      Java8Tester java8tester = new Java8Tester();
      java8tester.testAdjusters(); 	  
   }

   public void testAdjusters(){
      //Get the current date
      LocalDate date1 = LocalDate.now();
      System.out.println("Current date: " + date1);	  

      //get the next tuesday
      LocalDate nextTuesday = date1.with(TemporalAdjusters.next(DayOfWeek.TUESDAY));
      System.out.println("Next Tuesday on : " + nextTuesday);

      //get the second saturday of next month
      LocalDate firstInYear = LocalDate.of(date1.getYear(),date1.getMonth(), 1);

      LocalDate secondSaturday = firstInYear.with(
         TemporalAdjusters.nextOrSame(DayOfWeek.SATURDAY)).with(
         TemporalAdjusters.next(DayOfWeek.SATURDAY));
      System.out.println("Second saturday on : " + secondSaturday);	   
   }	
}

验证结果

使用javac编译器编译如下类

C:\JAVA>javac Java8Tester.java

现在运行Java8Tester看到的结果

C:\JAVA>java Java8Tester

看到结果。

Current date: 2014-12-10                                                 
Next Tuesday on : 2014-12-16                                             
Second saturday on : 2014-12-13
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值