Close

Java Date Time - LocalDateTime.with() Examples

Java Date Time Java Java API 


Class:

java.time.LocalDateTime

java.lang.Objectjava.lang.Objectjava.time.LocalDateTimejava.time.LocalDateTimejava.time.temporal.TemporalTemporaljava.time.temporal.TemporalAdjusterTemporalAdjusterjava.time.chrono.ChronoLocalDateTimeChronoLocalDateTimejava.io.SerializableSerializableLogicBig

Methods:

public LocalDateTime with(TemporalAdjuster adjuster)

This method returns a new LocalDateTime instance, with adjusted fields per provided adjuster.


public LocalDateTime with(TemporalField field,

long newValue)

This method returns a new LocalDateTime instance, with adjusted fields per provided newValue and the target field



Examples


package com.logicbig.example.localdatetime;

import java.time.LocalDateTime;
import java.time.temporal.Temporal;
import java.time.temporal.TemporalAdjusters;

public class WithExample {

public static void main (String... args) {
LocalDateTime d = LocalDateTime.of(2000, 1, 2,
10, 20);

LocalDateTime b = d.with(TemporalAdjusters.lastDayOfMonth());
System.out.println(b);

//alternatively
Temporal t = TemporalAdjusters.lastDayOfMonth()
.adjustInto(d);
System.out.println(t);

}

}

Output

2000-01-31T10:20
2000-01-31T10:20




package com.logicbig.example.localdatetime;

import java.time.LocalDateTime;
import java.time.temporal.ChronoField;

public class WithExample2 {

public static void main (String... args) {
LocalDateTime d = LocalDateTime.of(2000, 1, 2,
10, 20);
System.out.printf("Original date-time: %s%n", d);

LocalDateTime d2 = d.with(ChronoField.DAY_OF_WEEK, 1);
System.out.printf("Ist DAY_OF_WEEK: %s%n", d2);

d2 = d.with(ChronoField.HOUR_OF_DAY, 1);
System.out.printf("Ist HOUR_OF_DAY: %s%n", d2);

d2 = d.with(ChronoField.DAY_OF_MONTH, 25);
System.out.printf("25th DAY_OF_MONTH: %s%n", d2);

d2 = d.with(ChronoField.DAY_OF_YEAR, 100);
System.out.printf("100th DAY_OF_YEAR: %s%n", d2);

d2 = d.with(ChronoField.EPOCH_DAY, 200);
System.out.printf("200th EPOCH_DAY: %s%n", d2);

d2 = d.with(ChronoField.MONTH_OF_YEAR, 10);
System.out.printf("10th MONTH_OF_YEAR: %s%n", d2);

d2 = d.with(ChronoField.PROLEPTIC_MONTH, 1000);
System.out.printf("1000th PROLEPTIC_MONTH: %s%n", d2);

d2 = d.with(ChronoField.YEAR_OF_ERA, 500);
System.out.printf("500th YEAR_OF_ERA: %s%n", d2);

d2 = d.with(ChronoField.YEAR, 2000);
System.out.printf("2000th YEAR: %s%n", d2);

d2 = d.with(ChronoField.ERA, 1);
System.out.printf("1s ERA: %s%n", d2);

}
}

Output

Original date-time: 2000-01-02T10:20
Ist DAY_OF_WEEK: 1999-12-27T10:20
Ist HOUR_OF_DAY: 2000-01-02T01:20
25th DAY_OF_MONTH: 2000-01-25T10:20
100th DAY_OF_YEAR: 2000-04-09T10:20
200th EPOCH_DAY: 1970-07-20T10:20
10th MONTH_OF_YEAR: 2000-10-02T10:20
1000th PROLEPTIC_MONTH: 0083-05-02T10:20
500th YEAR_OF_ERA: 0500-01-02T10:20
2000th YEAR: 2000-01-02T10:20
1s ERA: 2000-01-02T10:20




See Also