8186713: Document default rounding mode in NumberFormat
Reviewed-by: naoto, bpb
Contributed-by: nishit.jain@oracle.com
--- a/jdk/src/java.base/share/classes/java/text/NumberFormat.java Tue Aug 29 00:01:00 2017 +0000
+++ b/jdk/src/java.base/share/classes/java/text/NumberFormat.java Tue Aug 29 12:16:22 2017 +0530
@@ -181,6 +181,17 @@
* The subclass may provide its own implementation and specification about
* {@code NullPointerException}.
*
+ * <p>
+ * The default implementation provides rounding modes defined
+ * in {@link java.math.RoundingMode} for formatting numbers. It
+ * uses the {@linkplain java.math.RoundingMode#HALF_EVEN
+ * round half-even algorithm}. To change the rounding mode use
+ * {@link #setRoundingMode(java.math.RoundingMode) setRoundingMode}.
+ * The {@code NumberFormat} returned by the static factory methods is
+ * configured to round floating point numbers using half-even
+ * rounding (see {@link java.math.RoundingMode#HALF_EVEN
+ * RoundingMode.HALF_EVEN}) for formatting.
+ *
* @see DecimalFormat
* @see ChoiceFormat
* @author Mark Davis
--- a/jdk/src/java.base/share/classes/java/util/Formatter.java Tue Aug 29 00:01:00 2017 +0000
+++ b/jdk/src/java.base/share/classes/java/util/Formatter.java Tue Aug 29 12:16:22 2017 +0530
@@ -1229,7 +1229,7 @@
* than the number of digits which would appear after the decimal point in
* the string returned by {@link Float#toString(float)} or {@link
* Double#toString(double)} respectively, then the value will be rounded
- * using the {@linkplain java.math.BigDecimal#ROUND_HALF_UP round half up
+ * using the {@linkplain java.math.RoundingMode#HALF_UP round half up
* algorithm}. Otherwise, zeros may be appended to reach the precision.
* For a canonical representation of the value, use {@link
* Float#toString(float)} or {@link Double#toString(double)} as
@@ -1298,7 +1298,7 @@
* than the number of digits which would appear after the decimal point in
* the string returned by {@link Float#toString(float)} or {@link
* Double#toString(double)} respectively, then the value will be rounded
- * using the {@linkplain java.math.BigDecimal#ROUND_HALF_UP round half up
+ * using the {@linkplain java.math.RoundingMode#HALF_UP round half up
* algorithm}. Otherwise, zeros may be appended to reach the precision.
* For a canonical representation of the value, use {@link
* Float#toString(float)} or {@link Double#toString(double)} as
@@ -1461,7 +1461,7 @@
* specified then the default value is {@code 6}. If the precision is
* less than the number of digits to the right of the decimal point then
* the value will be rounded using the
- * {@linkplain java.math.BigDecimal#ROUND_HALF_UP round half up
+ * {@linkplain java.math.RoundingMode#HALF_UP round half up
* algorithm}. Otherwise, zeros may be appended to reach the precision.
* For a canonical representation of the value, use {@link
* BigDecimal#toString()}.
@@ -1524,7 +1524,7 @@
* specified then the default value is {@code 6}. If the precision is
* less than the number of digits to the right of the decimal point
* then the value will be rounded using the
- * {@linkplain java.math.BigDecimal#ROUND_HALF_UP round half up
+ * {@linkplain java.math.RoundingMode#HALF_UP round half up
* algorithm}. Otherwise, zeros may be appended to reach the precision.
* For a canonical representation of the value, use {@link
* BigDecimal#toString()}.