--- old/src/java.base/share/classes/java/math/BigDecimal.java 2017-08-11 10:52:38.262322984 -0700 +++ new/src/java.base/share/classes/java/math/BigDecimal.java 2017-08-11 10:52:38.054313905 -0700 @@ -120,18 +120,18 @@ * preferred scale for representing a result. The preferred * scale for each operation is listed in the table below. * - * - * + *
Preferred Scales for Results of Arithmetic Operations - *
+ * * - * + * * * - * - * - * - * - * + * + * + * + * + * * *
Preferred Scales for Results of Arithmetic Operations + *
OperationPreferred Scale of Result
OperationPreferred Scale of Result
Addmax(addend.scale(), augend.scale())
Subtractmax(minuend.scale(), subtrahend.scale())
Multiplymultiplier.scale() + multiplicand.scale()
Dividedividend.scale() - divisor.scale()
Square rootradicand.scale()/2
Addmax(addend.scale(), augend.scale())
Subtractmax(minuend.scale(), subtrahend.scale())
Multiplymultiplier.scale() + multiplicand.scale()
Dividedividend.scale() - divisor.scale()
Square rootradicand.scale()/2
* --- old/src/java.base/share/classes/java/math/RoundingMode.java 2017-08-11 10:52:38.878349874 -0700 +++ new/src/java.base/share/classes/java/math/RoundingMode.java 2017-08-11 10:52:38.670340794 -0700 @@ -51,13 +51,13 @@ * proper {@code MathContext}. A summary table showing the results * of these rounding operations for all rounding modes appears below. * - * + *
* * - * * - * + * * * * @@ -66,18 +66,18 @@ * * * - * + * * - * - * - * - * - * - * - * - * - * - * + * + * + * + * + * + * + * + * + * + * * *
Summary of Rounding Operations Under Different Rounding Modes
Result of rounding input to one digit with the given + *
Input NumberResult of rounding input to one digit with the given * rounding mode
Input Number {@code UP}{@code UP}{@code DOWN}{@code CEILING}{@code FLOOR}{@code HALF_EVEN}{@code UNNECESSARY}
5.5 6 5 6 5 6 5 6 throw {@code ArithmeticException}
2.5 3 2 3 2 3 2 2 throw {@code ArithmeticException}
1.6 2 1 2 1 2 2 2 throw {@code ArithmeticException}
1.1 2 1 2 1 1 1 1 throw {@code ArithmeticException}
1.0 1 1 1 1 1 1 1 1
-1.0 -1 -1 -1 -1 -1 -1 -1 -1
-1.1 -2 -1 -1 -2 -1 -1 -1 throw {@code ArithmeticException}
-1.6 -2 -1 -1 -2 -2 -2 -2 throw {@code ArithmeticException}
-2.5 -3 -2 -2 -3 -3 -2 -2 throw {@code ArithmeticException}
-5.5 -6 -5 -5 -6 -6 -5 -6 throw {@code ArithmeticException}
5.5 6 5 6 5 6 5 6 throw {@code ArithmeticException}
2.5 3 2 3 2 3 2 2 throw {@code ArithmeticException}
1.6 2 1 2 1 2 2 2 throw {@code ArithmeticException}
1.1 2 1 2 1 1 1 1 throw {@code ArithmeticException}
1.0 1 1 1 1 1 1 1 1
-1.0 -1 -1 -1 -1 -1 -1 -1 -1
-1.1 -2 -1 -1 -2 -1 -1 -1 throw {@code ArithmeticException}
-1.6 -2 -1 -1 -2 -2 -2 -2 throw {@code ArithmeticException}
-2.5 -3 -2 -2 -3 -3 -2 -2 throw {@code ArithmeticException}
-5.5 -6 -5 -5 -6 -6 -5 -6 throw {@code ArithmeticException}
* @@ -104,23 +104,23 @@ * value. * *

Example: - * - * + *
Rounding mode UP Examples
+ * * - * - * + * - * - * - * - * - * - * - * - * - * - * - * + * + * + * + * + * + * + * + * + * + * + * * *
Rounding mode UP Examples
Input NumberInput rounded to one digit
with {@code UP} rounding + *
Input NumberInput rounded to one digit
with {@code UP} rounding *
5.5 6
2.5 3
1.6 2
1.1 2
1.0 1
-1.0 -1
-1.1 -2
-1.6 -2
-2.5 -3
-5.5 -6
5.5 6
2.5 3
1.6 2
1.1 2
1.0 1
-1.0 -1
-1.1 -2
-1.6 -2
-2.5 -3
-5.5 -6
*/ @@ -132,23 +132,23 @@ * rounding mode never increases the magnitude of the calculated value. * *

Example: - * - * + *
Rounding mode DOWN Examples
+ * * - * - * + * - * - * - * - * - * - * - * - * - * - * - * + * + * + * + * + * + * + * + * + * + * + * * *
Rounding mode DOWN Examples
Input NumberInput rounded to one digit
with {@code DOWN} rounding + *
Input NumberInput rounded to one digit
with {@code DOWN} rounding *
5.5 5
2.5 2
1.6 1
1.1 1
1.0 1
-1.0 -1
-1.1 -1
-1.6 -1
-2.5 -2
-5.5 -5
5.5 5
2.5 2
1.6 1
1.1 1
1.0 1
-1.0 -1
-1.1 -1
-1.6 -1
-2.5 -2
-5.5 -5
*/ @@ -161,23 +161,23 @@ * that this rounding mode never decreases the calculated value. * *

Example: - * - * + *
Rounding mode CEILING Examples
+ * * * * - * - * - * - * - * - * - * - * - * - * - * + * + * + * + * + * + * + * + * + * + * + * * *
Rounding mode CEILING Examples
Input NumberInput rounded to one digit
with {@code CEILING} rounding *
5.5 6
2.5 3
1.6 2
1.1 2
1.0 1
-1.0 -1
-1.1 -1
-1.6 -1
-2.5 -2
-5.5 -5
5.5 6
2.5 3
1.6 2
1.1 2
1.0 1
-1.0 -1
-1.1 -1
-1.6 -1
-2.5 -2
-5.5 -5
*/ @@ -190,23 +190,23 @@ * this rounding mode never increases the calculated value. * *

Example: - * - * + *
Rounding mode FLOOR Examples
+ * * - * - * + * - * - * - * - * - * - * - * - * - * - * - * + * + * + * + * + * + * + * + * + * + * + * * *
Rounding mode FLOOR Examples
Input NumberInput rounded to one digit
with {@code FLOOR} rounding + *
Input NumberInput rounded to one digit
with {@code FLOOR} rounding *
5.5 5
2.5 2
1.6 1
1.1 1
1.0 1
-1.0 -1
-1.1 -2
-1.6 -2
-2.5 -3
-5.5 -6
5.5 5
2.5 2
1.6 1
1.1 1
1.0 1
-1.0 -1
-1.1 -2
-1.6 -2
-2.5 -3
-5.5 -6
*/ @@ -221,23 +221,23 @@ * mode commonly taught at school. * *

Example: - * - * + *
Rounding mode HALF_UP Examples
+ * * - * - * + * - * - * - * - * - * - * - * - * - * - * - * + * + * + * + * + * + * + * + * + * + * + * * *
Rounding mode HALF_UP Examples
Input NumberInput rounded to one digit
with {@code HALF_UP} rounding + *
Input NumberInput rounded to one digit
with {@code HALF_UP} rounding *
5.5 6
2.5 3
1.6 2
1.1 1
1.0 1
-1.0 -1
-1.1 -1
-1.6 -2
-2.5 -3
-5.5 -6
5.5 6
2.5 3
1.6 2
1.1 1
1.0 1
-1.0 -1
-1.1 -1
-1.6 -2
-2.5 -3
-5.5 -6
*/ @@ -251,23 +251,23 @@ * {@code RoundingMode.DOWN}. * *

Example: - * - * + *
Rounding mode HALF_DOWN Examples
+ * * - * - * + * - * - * - * - * - * - * - * - * - * - * - * + * + * + * + * + * + * + * + * + * + * + * * *
Rounding mode HALF_DOWN Examples
Input NumberInput rounded to one digit
with {@code HALF_DOWN} rounding + *
Input NumberInput rounded to one digit
with {@code HALF_DOWN} rounding *
5.5 5
2.5 2
1.6 2
1.1 1
1.0 1
-1.0 -1
-1.1 -1
-1.6 -2
-2.5 -2
-5.5 -5
5.5 5
2.5 2
1.6 2
1.1 1
1.0 1
-1.0 -1
-1.1 -1
-1.6 -2
-2.5 -2
-5.5 -5
*/ @@ -288,23 +288,23 @@ * arithmetic in Java. * *

Example: - * - * + *
Rounding mode HALF_EVEN Examples
+ * * - * - * + * - * - * - * - * - * - * - * - * - * - * - * + * + * + * + * + * + * + * + * + * + * + * * *
Rounding mode HALF_EVEN Examples
Input NumberInput rounded to one digit
with {@code HALF_EVEN} rounding + *
Input NumberInput rounded to one digit
with {@code HALF_EVEN} rounding *
5.5 6
2.5 2
1.6 2
1.1 1
1.0 1
-1.0 -1
-1.1 -1
-1.6 -2
-2.5 -2
-5.5 -6
5.5 6
2.5 2
1.6 2
1.1 1
1.0 1
-1.0 -1
-1.1 -1
-1.6 -2
-2.5 -2
-5.5 -6
*/ @@ -316,23 +316,23 @@ * specified on an operation that yields an inexact result, an * {@code ArithmeticException} is thrown. *

Example: - * - * + *
Rounding mode UNNECESSARY Examples
+ * * - * - * + * - * - * - * - * - * - * - * - * - * - * - * + * + * + * + * + * + * + * + * + * + * + * * *
Rounding mode UNNECESSARY Examples
Input NumberInput rounded to one digit
with {@code UNNECESSARY} rounding + *
Input NumberInput rounded to one digit
with {@code UNNECESSARY} rounding *
5.5 throw {@code ArithmeticException}
2.5 throw {@code ArithmeticException}
1.6 throw {@code ArithmeticException}
1.1 throw {@code ArithmeticException}
1.0 1
-1.0 -1
-1.1 throw {@code ArithmeticException}
-1.6 throw {@code ArithmeticException}
-2.5 throw {@code ArithmeticException}
-5.5 throw {@code ArithmeticException}
5.5 throw {@code ArithmeticException}
2.5 throw {@code ArithmeticException}
1.6 throw {@code ArithmeticException}
1.1 throw {@code ArithmeticException}
1.0 1
-1.0 -1
-1.1 throw {@code ArithmeticException}
-1.6 throw {@code ArithmeticException}
-2.5 throw {@code ArithmeticException}
-5.5 throw {@code ArithmeticException}
*/ --- old/src/java.base/share/classes/java/text/MessageFormat.java 2017-08-11 10:52:39.430373970 -0700 +++ new/src/java.base/share/classes/java/text/MessageFormat.java 2017-08-11 10:52:39.222364890 -0700 @@ -150,73 +150,73 @@ * Shows how FormatType and FormatStyle values map to Format instances * * - * FormatType - * FormatStyle - * Subformat Created + * FormatType + * FormatStyle + * Subformat Created * * * - * (none) - * (none) - * null + * (none) + * (none) + * {@code null} * - * number - * (none) - * {@link NumberFormat#getInstance(Locale) NumberFormat.getInstance}{@code (getLocale())} + * {@code number} + * (none) + * {@link NumberFormat#getInstance(Locale) NumberFormat.getInstance}{@code (getLocale())} * - * integer - * {@link NumberFormat#getIntegerInstance(Locale) NumberFormat.getIntegerInstance}{@code (getLocale())} + * {@code integer} + * {@link NumberFormat#getIntegerInstance(Locale) NumberFormat.getIntegerInstance}{@code (getLocale())} * - * currency - * {@link NumberFormat#getCurrencyInstance(Locale) NumberFormat.getCurrencyInstance}{@code (getLocale())} + * {@code currency} + * {@link NumberFormat#getCurrencyInstance(Locale) NumberFormat.getCurrencyInstance}{@code (getLocale())} * - * percent - * {@link NumberFormat#getPercentInstance(Locale) NumberFormat.getPercentInstance}{@code (getLocale())} + * {@code percent} + * {@link NumberFormat#getPercentInstance(Locale) NumberFormat.getPercentInstance}{@code (getLocale())} * - * SubformatPattern - * {@code new} {@link DecimalFormat#DecimalFormat(String,DecimalFormatSymbols) DecimalFormat}{@code (subformatPattern,} {@link DecimalFormatSymbols#getInstance(Locale) DecimalFormatSymbols.getInstance}{@code (getLocale()))} + * SubformatPattern + * {@code new} {@link DecimalFormat#DecimalFormat(String,DecimalFormatSymbols) DecimalFormat}{@code (subformatPattern,} {@link DecimalFormatSymbols#getInstance(Locale) DecimalFormatSymbols.getInstance}{@code (getLocale()))} * - * date - * (none) - * {@link DateFormat#getDateInstance(int,Locale) DateFormat.getDateInstance}{@code (}{@link DateFormat#DEFAULT}{@code , getLocale())} + * {@code date} + * (none) + * {@link DateFormat#getDateInstance(int,Locale) DateFormat.getDateInstance}{@code (}{@link DateFormat#DEFAULT}{@code , getLocale())} * - * short - * {@link DateFormat#getDateInstance(int,Locale) DateFormat.getDateInstance}{@code (}{@link DateFormat#SHORT}{@code , getLocale())} + * {@code short} + * {@link DateFormat#getDateInstance(int,Locale) DateFormat.getDateInstance}{@code (}{@link DateFormat#SHORT}{@code , getLocale())} * - * medium - * {@link DateFormat#getDateInstance(int,Locale) DateFormat.getDateInstance}{@code (}{@link DateFormat#DEFAULT}{@code , getLocale())} + * {@code medium} + * {@link DateFormat#getDateInstance(int,Locale) DateFormat.getDateInstance}{@code (}{@link DateFormat#DEFAULT}{@code , getLocale())} * - * long - * {@link DateFormat#getDateInstance(int,Locale) DateFormat.getDateInstance}{@code (}{@link DateFormat#LONG}{@code , getLocale())} + * {@code long} + * {@link DateFormat#getDateInstance(int,Locale) DateFormat.getDateInstance}{@code (}{@link DateFormat#LONG}{@code , getLocale())} * - * full - * {@link DateFormat#getDateInstance(int,Locale) DateFormat.getDateInstance}{@code (}{@link DateFormat#FULL}{@code , getLocale())} + * {@code full} + * {@link DateFormat#getDateInstance(int,Locale) DateFormat.getDateInstance}{@code (}{@link DateFormat#FULL}{@code , getLocale())} * - * SubformatPattern - * {@code new} {@link SimpleDateFormat#SimpleDateFormat(String,Locale) SimpleDateFormat}{@code (subformatPattern, getLocale())} + * SubformatPattern + * {@code new} {@link SimpleDateFormat#SimpleDateFormat(String,Locale) SimpleDateFormat}{@code (subformatPattern, getLocale())} * - * time - * (none) - * {@link DateFormat#getTimeInstance(int,Locale) DateFormat.getTimeInstance}{@code (}{@link DateFormat#DEFAULT}{@code , getLocale())} + * {@code time} + * (none) + * {@link DateFormat#getTimeInstance(int,Locale) DateFormat.getTimeInstance}{@code (}{@link DateFormat#DEFAULT}{@code , getLocale())} * - * short - * {@link DateFormat#getTimeInstance(int,Locale) DateFormat.getTimeInstance}{@code (}{@link DateFormat#SHORT}{@code , getLocale())} + * {@code short} + * {@link DateFormat#getTimeInstance(int,Locale) DateFormat.getTimeInstance}{@code (}{@link DateFormat#SHORT}{@code , getLocale())} * - * medium - * {@link DateFormat#getTimeInstance(int,Locale) DateFormat.getTimeInstance}{@code (}{@link DateFormat#DEFAULT}{@code , getLocale())} + * {@code medium} + * {@link DateFormat#getTimeInstance(int,Locale) DateFormat.getTimeInstance}{@code (}{@link DateFormat#DEFAULT}{@code , getLocale())} * - * long - * {@link DateFormat#getTimeInstance(int,Locale) DateFormat.getTimeInstance}{@code (}{@link DateFormat#LONG}{@code , getLocale())} + * {@code long} + * {@link DateFormat#getTimeInstance(int,Locale) DateFormat.getTimeInstance}{@code (}{@link DateFormat#LONG}{@code , getLocale())} * - * full - * {@link DateFormat#getTimeInstance(int,Locale) DateFormat.getTimeInstance}{@code (}{@link DateFormat#FULL}{@code , getLocale())} + * {@code full} + * {@link DateFormat#getTimeInstance(int,Locale) DateFormat.getTimeInstance}{@code (}{@link DateFormat#FULL}{@code , getLocale())} * - * SubformatPattern - * {@code new} {@link SimpleDateFormat#SimpleDateFormat(String,Locale) SimpleDateFormat}{@code (subformatPattern, getLocale())} + * SubformatPattern + * {@code new} {@link SimpleDateFormat#SimpleDateFormat(String,Locale) SimpleDateFormat}{@code (subformatPattern, getLocale())} * - * choice - * SubformatPattern - * {@code new} {@link ChoiceFormat#ChoiceFormat(String) ChoiceFormat}{@code (subformatPattern)} + * {@code choice} + * SubformatPattern + * {@code new} {@link ChoiceFormat#ChoiceFormat(String) ChoiceFormat}{@code (subformatPattern)} * * * @@ -776,44 +776,40 @@ * Examples of subformat,argument,and formatted text * * - * Subformat - * Argument - * Formatted Text + * Subformat + * Argument + * Formatted Text * * * - * any - * unavailable + * any + * unavailable * "{" + argumentIndex + "}" * - * any - * null + * null * "null" * - * instanceof ChoiceFormat - * any + * instanceof ChoiceFormat + * any * subformat.format(argument).indexOf('{') >= 0 ?
* (new MessageFormat(subformat.format(argument), getLocale())).format(argument) : * subformat.format(argument)
* - * != null - * any + * != null + * any * subformat.format(argument) * - * null - * instanceof Number + * null + * instanceof Number * NumberFormat.getInstance(getLocale()).format(argument) * - * null - * instanceof Date + * instanceof Date * DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT, getLocale()).format(argument) * - * null - * instanceof String + * instanceof String * argument * - * null - * any + * any * argument.toString() * * --- old/src/java.base/share/classes/java/time/chrono/HijrahChronology.java 2017-08-11 10:52:39.994398590 -0700 +++ new/src/java.base/share/classes/java/time/chrono/HijrahChronology.java 2017-08-11 10:52:39.790389685 -0700 @@ -103,19 +103,19 @@ * *

* CLDR and LDML identify variants: - * + *
* * * - * - * - * - * + * + * + * + * * * * * - * + * * * * @@ -148,38 +148,38 @@ *

* The Hijrah property resource is a set of properties that describe the calendar. * The syntax is defined by {@code java.util.Properties#load(Reader)}. - *

Variants of Hijrah Calendars
Chronology IDCalendar TypeLocale extension, see {@link java.util.Locale}DescriptionChronology IDCalendar TypeLocale extension, see {@link java.util.Locale}Description
Hijrah-umalquraHijrah-umalquraislamic-umalquraca-islamic-umalquraIslamic - Umm Al-Qura calendar of Saudi Arabia
+ *
* * * - * - * - * + * + * + * * * * * - * + * * * * * - * + * * * * * - * + * * * * * - * + * * * * * - * + * * *
Configuration of Hijrah Calendar
Property Name Property value Description Property NameProperty valueDescription
ididChronology Id, for example, "Hijrah-umalqura"The Id of the calendar in common usage
typetypeCalendar type, for example, "islamic-umalqura"LDML defines the calendar types
versionversionVersion, for example: "1.8.0_1"The version of the Hijrah variant data
iso-startiso-startISO start date, formatted as {@code yyyy-MM-dd}, for example: "1900-04-30"The ISO date of the first day of the minimum Hijrah year.
yyyy - a numeric 4 digit year, for example "1434"yyyy - a numeric 4 digit year, for example "1434"The value is a sequence of 12 month lengths, * for example: "29 30 29 30 29 30 30 30 29 30 29 29"The lengths of the 12 months of the year separated by whitespace. --- old/src/java.base/share/classes/java/time/chrono/IsoEra.java 2017-08-11 10:52:40.538422337 -0700 +++ new/src/java.base/share/classes/java/time/chrono/IsoEra.java 2017-08-11 10:52:40.334413431 -0700 @@ -70,27 +70,27 @@ * A definition has therefore been created with two eras - 'Current era' (CE) for * years on or after 0001-01-01 (ISO), and 'Before current era' (BCE) for years before that. * - * + *
* * * - * - * - * + * + * + * * * * * - * + * * * - * + * * * - * + * * * - * + * * * *
ISO years and eras
year-of-eraeraproleptic-yearyear-of-eraeraproleptic-year
2CE22CE2
1CE11CE1
1BCE01BCE0
2BCE-12BCE-1
--- old/src/java.base/share/classes/java/time/chrono/MinguoEra.java 2017-08-11 10:52:41.074445734 -0700 +++ new/src/java.base/share/classes/java/time/chrono/MinguoEra.java 2017-08-11 10:52:40.866436654 -0700 @@ -71,28 +71,28 @@ * All previous years, zero or earlier in the proleptic count or one and greater * in the year-of-era count, are part of the 'Before Republic of China' era. * - * + *
* * * - * - * - * - * + * + * + * + * * * * * - * + * * * - * + * * * - * + * * * - * + * * * *
Minguo years and eras
year-of-eraeraproleptic-yearISO proleptic-yearyear-of-eraeraproleptic-yearISO proleptic-year
2ROC219132ROC21913
1ROC119121ROC11912
1BEFORE_ROC019111BEFORE_ROC01911
2BEFORE_ROC-119102BEFORE_ROC-11910
--- old/src/java.base/share/classes/java/time/chrono/ThaiBuddhistEra.java 2017-08-11 10:52:41.598468608 -0700 +++ new/src/java.base/share/classes/java/time/chrono/ThaiBuddhistEra.java 2017-08-11 10:52:41.390459528 -0700 @@ -71,28 +71,28 @@ * All previous years, zero or earlier in the proleptic count or one and greater * in the year-of-era count, are part of the 'Before Buddhist' era. * - * + *
* * * - * - * - * - * + * + * + * + * * * * * - * + * * * - * + * * * - * + * * * - * + * * * *
Buddhist years and eras
year-of-eraeraproleptic-yearISO proleptic-yearyear-of-eraeraproleptic-yearISO proleptic-year
2BE2-5422BE2-542
1BE1-5431BE1-543
1BEFORE_BE0-5441BEFORE_BE0-544
2BEFORE_BE-1-5452BEFORE_BE-1-545
--- old/src/java.base/share/classes/java/time/format/DateTimeFormatter.java 2017-08-11 10:52:42.122491481 -0700 +++ new/src/java.base/share/classes/java/time/format/DateTimeFormatter.java 2017-08-11 10:52:41.910482227 -0700 @@ -150,13 +150,13 @@ * implementation of {@code java.text.Format}. * *

Predefined Formatters

- * + *
* * * - * - * - * + * + * + * * * * @@ -276,56 +276,60 @@ *

* All letters 'A' to 'Z' and 'a' to 'z' are reserved as pattern letters. The * following pattern letters are defined: - *

- *  Symbol  Meaning                     Presentation      Examples
- *  ------  -------                     ------------      -------
- *   G       era                         text              AD; Anno Domini; A
- *   u       year                        year              2004; 04
- *   y       year-of-era                 year              2004; 04
- *   D       day-of-year                 number            189
- *   M/L     month-of-year               number/text       7; 07; Jul; July; J
- *   d       day-of-month                number            10
- *   g       modified-julian-day         number            2451334
- *
- *   Q/q     quarter-of-year             number/text       3; 03; Q3; 3rd quarter
- *   Y       week-based-year             year              1996; 96
- *   w       week-of-week-based-year     number            27
- *   W       week-of-month               number            4
- *   E       day-of-week                 text              Tue; Tuesday; T
- *   e/c     localized day-of-week       number/text       2; 02; Tue; Tuesday; T
- *   F       day-of-week-in-month        number            3
- *
- *   a       am-pm-of-day                text              PM
- *   h       clock-hour-of-am-pm (1-12)  number            12
- *   K       hour-of-am-pm (0-11)        number            0
- *   k       clock-hour-of-day (1-24)    number            24
- *
- *   H       hour-of-day (0-23)          number            0
- *   m       minute-of-hour              number            30
- *   s       second-of-minute            number            55
- *   S       fraction-of-second          fraction          978
- *   A       milli-of-day                number            1234
- *   n       nano-of-second              number            987654321
- *   N       nano-of-day                 number            1234000000
- *
- *   V       time-zone ID                zone-id           America/Los_Angeles; Z; -08:30
- *   v       generic time-zone name      zone-name         Pacific Time; PT
- *   z       time-zone name              zone-name         Pacific Standard Time; PST
- *   O       localized zone-offset       offset-O          GMT+8; GMT+08:00; UTC-08:00
- *   X       zone-offset 'Z' for zero    offset-X          Z; -08; -0830; -08:30; -083015; -08:30:15
- *   x       zone-offset                 offset-x          +0000; -08; -0830; -08:30; -083015; -08:30:15
- *   Z       zone-offset                 offset-Z          +0000; -0800; -08:00
- *
- *   p       pad next                    pad modifier      1
- *
- *   '       escape for text             delimiter
- *   ''      single quote                literal           '
- *   [       optional section start
- *   ]       optional section end
- *   #       reserved for future use
- *   {       reserved for future use
- *   }       reserved for future use
- * 
+ *
Predefined Formatters
FormatterDescriptionExampleFormatterDescriptionExample
+ * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
Pattern Letters and Symbols
Symbol Meaning Presentation Examples
G era text AD; Anno Domini; A
u year year 2004; 04
y year-of-era year 2004; 04
D day-of-year number 189
M/L month-of-year number/text 7; 07; Jul; July; J
d day-of-month number 10
g modified-julian-day number 2451334
Q/q quarter-of-year number/text 3; 03; Q3; 3rd quarter
Y week-based-year year 1996; 96
w week-of-week-based-year number 27
W week-of-month number 4
E day-of-week text Tue; Tuesday; T
e/c localized day-of-week number/text 2; 02; Tue; Tuesday; T
F day-of-week-in-month number 3
a am-pm-of-day text PM
h clock-hour-of-am-pm (1-12) number 12
K hour-of-am-pm (0-11) number 0
k clock-hour-of-day (1-24) number 24
H hour-of-day (0-23) number 0
m minute-of-hour number 30
s second-of-minute number 55
S fraction-of-second fraction 978
A milli-of-day number 1234
n nano-of-second number 987654321
N nano-of-day number 1234000000
V time-zone ID zone-id America/Los_Angeles; Z; -08:30
v generic time-zone name zone-name Pacific Time; PT
z time-zone name zone-name Pacific Standard Time; PST
O localized zone-offset offset-O GMT+8; GMT+08:00; UTC-08:00
X zone-offset 'Z' for zero offset-X Z; -08; -0830; -08:30; -083015; -08:30:15
x zone-offset offset-x +0000; -08; -0830; -08:30; -083015; -08:30:15
Z zone-offset offset-Z +0000; -0800; -08:00
p pad next pad modifier 1
' escape for text delimiter
'' single quote literal '
[ optional section start
] optional section end
# reserved for future use
{ reserved for future use
} reserved for future use
*

* The count of pattern letters determines the format. *

--- old/src/java.base/share/classes/java/time/temporal/IsoFields.java 2017-08-11 10:52:42.698516625 -0700 +++ new/src/java.base/share/classes/java/time/temporal/IsoFields.java 2017-08-11 10:52:42.486507371 -0700 @@ -136,18 +136,18 @@ *

* For example: * - * + *
* * - * + * * * - * - * - * - * - * - * + * + * + * + * + * + * * *
Examples of Week based Years
DateDay-of-weekField values
DateDay-of-weekField values
2008-12-28SundayWeek 52 of week-based-year 2008
2008-12-29MondayWeek 1 of week-based-year 2009
2008-12-31WednesdayWeek 1 of week-based-year 2009
2009-01-01ThursdayWeek 1 of week-based-year 2009
2009-01-04SundayWeek 1 of week-based-year 2009
2009-01-05MondayWeek 2 of week-based-year 2009
2008-12-28SundayWeek 52 of week-based-year 2008
2008-12-29MondayWeek 1 of week-based-year 2009
2008-12-31WednesdayWeek 1 of week-based-year 2009
2009-01-01ThursdayWeek 1 of week-based-year 2009
2009-01-04SundayWeek 1 of week-based-year 2009
2009-01-05MondayWeek 2 of week-based-year 2009
* --- old/src/java.base/share/classes/java/time/temporal/WeekFields.java 2017-08-11 10:52:43.270541594 -0700 +++ new/src/java.base/share/classes/java/time/temporal/WeekFields.java 2017-08-11 10:52:43.050531990 -0700 @@ -130,17 +130,17 @@ * * * - * - * + * + * * * - * + * * - * + * * - * + * * - * + * * * *
Examples of WeekFields
DateDay-of-weekFirst day: Monday
Minimal days: 4
First day: Monday
Minimal days: 5
DateDay-of-weekFirst day: Monday
Minimal days: 4
First day: Monday
Minimal days: 5
2008-12-31Wednesday
2008-12-31WednesdayWeek 5 of December 2008Week 5 of December 2008
2009-01-01Thursday
2009-01-01ThursdayWeek 1 of January 2009Week 0 of January 2009
2009-01-04Sunday
2009-01-04SundayWeek 1 of January 2009Week 0 of January 2009
2009-01-05Monday
2009-01-05MondayWeek 2 of January 2009Week 1 of January 2009
@@ -164,17 +164,17 @@ * * * - * - * + * + * * * - * + * * - * + * * - * + * * - * + * * * *
Examples of WeekFields for week-based-year
DateDay-of-weekFirst day: Monday
Minimal days: 4
First day: Monday
Minimal days: 5
DateDay-of-weekFirst day: Monday
Minimal days: 4
First day: Monday
Minimal days: 5
2008-12-31Wednesday
2008-12-31WednesdayWeek 1 of 2009Week 53 of 2008
2009-01-01Thursday
2009-01-01ThursdayWeek 1 of 2009Week 53 of 2008
2009-01-04Sunday
2009-01-04SundayWeek 1 of 2009Week 53 of 2008
2009-01-05Monday
2009-01-05MondayWeek 2 of 2009Week 1 of 2009