SUPPORTED_UNITS = List.of(YEARS, MONTHS, DAYS);
/**
* The number of years.
--- old/src/java.base/share/classes/java/time/ZoneId.java 2016-09-15 14:53:53.967378555 +0000
+++ new/src/java.base/share/classes/java/time/ZoneId.java 2016-09-15 14:53:53.860396142 +0000
@@ -76,14 +76,14 @@
import java.time.zone.ZoneRules;
import java.time.zone.ZoneRulesException;
import java.time.zone.ZoneRulesProvider;
-import java.util.Collections;
-import java.util.HashMap;
import java.util.Locale;
import java.util.Map;
import java.util.Objects;
import java.util.Set;
import java.util.TimeZone;
+import static java.util.Map.entry;
+
/**
* A time-zone ID, such as {@code Europe/Paris}.
*
@@ -220,39 +220,36 @@
*
* The map is unmodifiable.
*/
- public static final Map SHORT_IDS;
- static {
- Map map = new HashMap<>(64);
- map.put("ACT", "Australia/Darwin");
- map.put("AET", "Australia/Sydney");
- map.put("AGT", "America/Argentina/Buenos_Aires");
- map.put("ART", "Africa/Cairo");
- map.put("AST", "America/Anchorage");
- map.put("BET", "America/Sao_Paulo");
- map.put("BST", "Asia/Dhaka");
- map.put("CAT", "Africa/Harare");
- map.put("CNT", "America/St_Johns");
- map.put("CST", "America/Chicago");
- map.put("CTT", "Asia/Shanghai");
- map.put("EAT", "Africa/Addis_Ababa");
- map.put("ECT", "Europe/Paris");
- map.put("IET", "America/Indiana/Indianapolis");
- map.put("IST", "Asia/Kolkata");
- map.put("JST", "Asia/Tokyo");
- map.put("MIT", "Pacific/Apia");
- map.put("NET", "Asia/Yerevan");
- map.put("NST", "Pacific/Auckland");
- map.put("PLT", "Asia/Karachi");
- map.put("PNT", "America/Phoenix");
- map.put("PRT", "America/Puerto_Rico");
- map.put("PST", "America/Los_Angeles");
- map.put("SST", "Pacific/Guadalcanal");
- map.put("VST", "Asia/Ho_Chi_Minh");
- map.put("EST", "-05:00");
- map.put("MST", "-07:00");
- map.put("HST", "-10:00");
- SHORT_IDS = Collections.unmodifiableMap(map);
- }
+ public static final Map SHORT_IDS = Map.ofEntries(
+ entry("ACT", "Australia/Darwin"),
+ entry("AET", "Australia/Sydney"),
+ entry("AGT", "America/Argentina/Buenos_Aires"),
+ entry("ART", "Africa/Cairo"),
+ entry("AST", "America/Anchorage"),
+ entry("BET", "America/Sao_Paulo"),
+ entry("BST", "Asia/Dhaka"),
+ entry("CAT", "Africa/Harare"),
+ entry("CNT", "America/St_Johns"),
+ entry("CST", "America/Chicago"),
+ entry("CTT", "Asia/Shanghai"),
+ entry("EAT", "Africa/Addis_Ababa"),
+ entry("ECT", "Europe/Paris"),
+ entry("IET", "America/Indiana/Indianapolis"),
+ entry("IST", "Asia/Kolkata"),
+ entry("JST", "Asia/Tokyo"),
+ entry("MIT", "Pacific/Apia"),
+ entry("NET", "Asia/Yerevan"),
+ entry("NST", "Pacific/Auckland"),
+ entry("PLT", "Asia/Karachi"),
+ entry("PNT", "America/Phoenix"),
+ entry("PRT", "America/Puerto_Rico"),
+ entry("PST", "America/Los_Angeles"),
+ entry("SST", "Pacific/Guadalcanal"),
+ entry("VST", "Asia/Ho_Chi_Minh"),
+ entry("EST", "-05:00"),
+ entry("MST", "-07:00"),
+ entry("HST", "-10:00")
+ );
/**
* Serialization version.
*/
--- old/src/java.base/share/classes/java/time/chrono/ChronoPeriodImpl.java 2016-09-15 14:53:54.315321358 +0000
+++ new/src/java.base/share/classes/java/time/chrono/ChronoPeriodImpl.java 2016-09-15 14:53:54.213338123 +0000
@@ -77,8 +77,6 @@
import java.time.temporal.TemporalUnit;
import java.time.temporal.UnsupportedTemporalTypeException;
import java.time.temporal.ValueRange;
-import java.util.Arrays;
-import java.util.Collections;
import java.util.List;
import java.util.Objects;
@@ -105,8 +103,7 @@
/**
* The set of supported units.
*/
- private static final List SUPPORTED_UNITS =
- Collections.unmodifiableList(Arrays.asList(YEARS, MONTHS, DAYS));
+ private static final List SUPPORTED_UNITS = List.of(YEARS, MONTHS, DAYS);
/**
* The chronology.
--- old/src/java.base/share/classes/java/time/chrono/HijrahChronology.java 2016-09-15 14:53:54.608273201 +0000
+++ new/src/java.base/share/classes/java/time/chrono/HijrahChronology.java 2016-09-15 14:53:54.503290459 +0000
@@ -59,10 +59,7 @@
import static java.time.temporal.ChronoField.EPOCH_DAY;
-import java.io.File;
-import java.io.FileInputStream;
import java.io.FilePermission;
-import java.io.IOException;
import java.io.InputStream;
import java.io.InvalidObjectException;
import java.io.ObjectInputStream;
@@ -83,7 +80,6 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import java.util.Objects;
import java.util.Properties;
import sun.util.logging.PlatformLogger;
@@ -512,7 +508,7 @@
@Override
public List eras() {
- return Arrays.asList(HijrahEra.values());
+ return List.of(HijrahEra.values());
}
//-----------------------------------------------------------------------
--- old/src/java.base/share/classes/java/time/chrono/IsoChronology.java 2016-09-15 14:53:54.945217812 +0000
+++ new/src/java.base/share/classes/java/time/chrono/IsoChronology.java 2016-09-15 14:53:54.833236220 +0000
@@ -90,7 +90,6 @@
import java.time.temporal.TemporalAccessor;
import java.time.temporal.TemporalField;
import java.time.temporal.ValueRange;
-import java.util.Arrays;
import java.util.List;
import java.util.Locale;
import java.util.Map;
@@ -492,7 +491,7 @@
@Override
public List eras() {
- return Arrays.asList(IsoEra.values());
+ return List.of(IsoEra.values());
}
//-----------------------------------------------------------------------
--- old/src/java.base/share/classes/java/time/chrono/JapaneseChronology.java 2016-09-15 14:53:55.269164559 +0000
+++ new/src/java.base/share/classes/java/time/chrono/JapaneseChronology.java 2016-09-15 14:53:55.165181653 +0000
@@ -81,7 +81,6 @@
import java.time.temporal.TemporalField;
import java.time.temporal.UnsupportedTemporalTypeException;
import java.time.temporal.ValueRange;
-import java.util.Arrays;
import java.util.Calendar;
import java.util.List;
import java.util.Locale;
@@ -379,7 +378,7 @@
@Override
public List eras() {
- return Arrays.asList(JapaneseEra.values());
+ return List.of(JapaneseEra.values());
}
JapaneseEra getCurrentEra() {
--- old/src/java.base/share/classes/java/time/chrono/MinguoChronology.java 2016-09-15 14:53:55.574114430 +0000
+++ new/src/java.base/share/classes/java/time/chrono/MinguoChronology.java 2016-09-15 14:53:55.471131359 +0000
@@ -72,7 +72,6 @@
import java.time.temporal.TemporalAccessor;
import java.time.temporal.TemporalField;
import java.time.temporal.ValueRange;
-import java.util.Arrays;
import java.util.List;
import java.util.Locale;
import java.util.Map;
@@ -306,7 +305,7 @@
@Override
public List eras() {
- return Arrays.asList(MinguoEra.values());
+ return List.of(MinguoEra.values());
}
//-----------------------------------------------------------------------
--- old/src/java.base/share/classes/java/time/chrono/ThaiBuddhistChronology.java 2016-09-15 14:53:55.874065122 +0000
+++ new/src/java.base/share/classes/java/time/chrono/ThaiBuddhistChronology.java 2016-09-15 14:53:55.768082544 +0000
@@ -342,7 +342,7 @@
@Override
public List eras() {
- return Arrays.asList(ThaiBuddhistEra.values());
+ return List.of(ThaiBuddhistEra.values());
}
//-----------------------------------------------------------------------
--- old/src/java.base/share/classes/java/time/format/DateTimeFormatter.java 2016-09-15 14:53:56.170016472 +0000
+++ new/src/java.base/share/classes/java/time/format/DateTimeFormatter.java 2016-09-15 14:53:56.066033565 +0000
@@ -1685,6 +1685,8 @@
public DateTimeFormatter withResolverFields(TemporalField... resolverFields) {
Set fields = null;
if (resolverFields != null) {
+ // An unmodifiable set wrapper is used instead of Set.of because resolverFields may
+ // contain null and Set.of is null-hostile.
fields = Collections.unmodifiableSet(new HashSet<>(Arrays.asList(resolverFields)));
}
if (Objects.equals(this.resolverFields, fields)) {
--- old/src/java.base/share/classes/java/time/zone/ZoneOffsetTransition.java 2016-09-15 14:53:56.565951386 +0000
+++ new/src/java.base/share/classes/java/time/zone/ZoneOffsetTransition.java 2016-09-15 14:53:56.418975547 +0000
@@ -387,9 +387,9 @@
*/
List getValidOffsets() {
if (isGap()) {
- return Collections.emptyList();
+ return List.of();
}
- return Arrays.asList(getOffsetBefore(), getOffsetAfter());
+ return List.of(getOffsetBefore(), getOffsetAfter());
}
//-----------------------------------------------------------------------
--- old/src/java.base/share/classes/java/time/zone/ZoneRules.java 2016-09-15 14:53:56.959886628 +0000
+++ new/src/java.base/share/classes/java/time/zone/ZoneRules.java 2016-09-15 14:53:56.798913090 +0000
@@ -303,7 +303,6 @@
* Creates an instance of ZoneRules that has fixed zone rules.
*
* @param offset the offset this fixed zone rules is based on, not null
- * @return the zone rules, not null
* @see #isFixedOffset()
*/
private ZoneRules(ZoneOffset offset) {
@@ -970,7 +969,7 @@
* @return an immutable list of transition rules, not null
*/
public List getTransitionRules() {
- return Collections.unmodifiableList(Arrays.asList(lastRules));
+ return List.of(lastRules);
}
/**
--- old/src/java.base/share/classes/java/util/ResourceBundle.java 2016-09-15 14:53:57.354821706 +0000
+++ new/src/java.base/share/classes/java/util/ResourceBundle.java 2016-09-15 14:53:57.225842909 +0000
@@ -2491,34 +2491,29 @@
/**
* The default format List
, which contains the strings
* "java.class"
and "java.properties"
, in
- * this order. This List
is {@linkplain
- * Collections#unmodifiableList(List) unmodifiable}.
+ * this order. This List
is unmodifiable.
*
* @see #getFormats(String)
*/
- public static final List FORMAT_DEFAULT
- = Collections.unmodifiableList(Arrays.asList("java.class",
- "java.properties"));
+ public static final List FORMAT_DEFAULT
+ = List.of("java.class", "java.properties");
/**
* The class-only format List
containing
- * "java.class"
. This List
is {@linkplain
- * Collections#unmodifiableList(List) unmodifiable}.
+ * "java.class"
. This List
is unmodifiable.
*
* @see #getFormats(String)
*/
- public static final List FORMAT_CLASS
- = Collections.unmodifiableList(Arrays.asList("java.class"));
+ public static final List FORMAT_CLASS = List.of("java.class");
/**
* The properties-only format List
containing
- * "java.properties"
. This List
is
- * {@linkplain Collections#unmodifiableList(List) unmodifiable}.
+ * "java.properties"
. This List
is unmodifiable.
*
* @see #getFormats(String)
*/
- public static final List FORMAT_PROPERTIES
- = Collections.unmodifiableList(Arrays.asList("java.properties"));
+ public static final List FORMAT_PROPERTIES
+ = List.of("java.properties");
/**
* The time-to-live constant for not caching loaded resource bundle
--- old/src/java.base/share/classes/java/util/stream/Collectors.java 2016-09-15 14:53:57.700764838 +0000
+++ new/src/java.base/share/classes/java/util/stream/Collectors.java 2016-09-15 14:53:57.593782424 +0000
@@ -27,7 +27,6 @@
import java.util.AbstractMap;
import java.util.AbstractSet;
import java.util.ArrayList;
-import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.Comparator;
@@ -1720,12 +1719,12 @@
@Override
public Set> entrySet() {
- return new AbstractSet>() {
+ return new AbstractSet<>() {
@Override
public Iterator> iterator() {
Map.Entry falseEntry = new SimpleImmutableEntry<>(false, forFalse);
Map.Entry trueEntry = new SimpleImmutableEntry<>(true, forTrue);
- return Arrays.asList(falseEntry, trueEntry).iterator();
+ return List.of(falseEntry, trueEntry).iterator();
}
@Override