Aşağıda belirli bir tarihten bir tarih nesnesi yaratıyoruz. Bu işlem ardından şimdiki tarih ile ilgili ekleme, çıkarma ve güncelleme işlemleri yapıyoruz.
package com.test.datetime.java8;
import java.time.LocalDate;
public class DateTimeUpdateTest {
public static void main(String[] args) {
LocalDate date=LocalDate.of(1919,5,19);
System.out.println("date:"+date);
LocalDate dateNow=LocalDate.now();
LocalDate updated=dateNow.withYear(1938).withMonth(11).withDayOfMonth(10);
System.out.println("date now:"+date);
System.out.println("updated:"+updated);
LocalDate nowForAdd=LocalDate.now();
LocalDate added=nowForAdd.plusDays(1).plusMonths(2).plusYears(3);
System.out.println("date orijinal:"+nowForAdd);
System.out.println("added:"+added);
LocalDate nowForMinus=LocalDate.now();
LocalDate minused=nowForMinus.minusDays(1).minusMonths(2).minusYears(3);
System.out.println("date orijinal:"+nowForMinus);
System.out.println("minused:"+minused);
}
}
Uygulama çalıştığında çıktı aşağıdaki gibi olabilir:
date:1919-05-19
date now:1919-05-19
updated:1938-11-10
date orijinal:2016-10-20
added:2019-12-21
date orijinal:2016-10-20
minused:2013-08-19
İlk önce LocalDate.of(1919,5,19) ile istenilen bir tarihe göre tarih yaratılmıştır.
İkinci olarak yaratılan şimdiki tarih değeri dateNow.withYear(1938).withMonth(11).withDayOfMonth(10) ile 10 kasım 1938 haline getirilmiştir.
Üçüncü olarak nowForAdd.plusDays(1).plusMonths(2).plusYears(3) ile bir tarihe 1 gün, 2 ay ve 3 yıl eklenmiştir.
Dördüncü olarak da nowForMinus.minusDays(1).minusMonths(2).minusYears(3); bir tarihten 1 gün, 2 ay ve 3 yıl çıkarılmıştır.
Tarihlerin orjinal ve değiştirilmiş halleri ekrana basılmıştır. Görüldüğü gibi yapılan işlemler orjinal tarih nesnesini değerlerini değiştirmemiştir.