mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-26 14:24:46 +02:00
8269124: Update java.time to use switch expressions (part II)
Reviewed-by: dfuchs, vtewari, aefimov, iris, lancea, naoto
This commit is contained in:
parent
675a9520b2
commit
8a7b380ebb
16 changed files with 322 additions and 370 deletions
|
@ -1300,14 +1300,14 @@ public final class ZonedDateTime
|
|||
@Override
|
||||
public ZonedDateTime with(TemporalField field, long newValue) {
|
||||
if (field instanceof ChronoField chronoField) {
|
||||
switch (chronoField) {
|
||||
case INSTANT_SECONDS:
|
||||
return create(newValue, getNano(), zone);
|
||||
case OFFSET_SECONDS:
|
||||
return switch (chronoField) {
|
||||
case INSTANT_SECONDS -> create(newValue, getNano(), zone);
|
||||
case OFFSET_SECONDS -> {
|
||||
ZoneOffset offset = ZoneOffset.ofTotalSeconds(chronoField.checkValidIntValue(newValue));
|
||||
return resolveOffset(offset);
|
||||
}
|
||||
return resolveLocal(dateTime.with(field, newValue));
|
||||
yield resolveOffset(offset);
|
||||
}
|
||||
default -> resolveLocal(dateTime.with(field, newValue));
|
||||
};
|
||||
}
|
||||
return field.adjustInto(this, newValue);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue