OpenJDK / jdk / jdk
changeset 47016:49f2da5b2ea3
8186713: Document default rounding mode in NumberFormat
Reviewed-by: naoto, bpb
Contributed-by: nishit.jain@oracle.com
author | nishjain |
---|---|
date | Tue, 29 Aug 2017 12:16:22 +0530 |
parents | ae0aad3b3881 |
children | b19dea422270 e28c8b19ffb2 |
files | jdk/src/java.base/share/classes/java/text/NumberFormat.java jdk/src/java.base/share/classes/java/util/Formatter.java |
diffstat | 2 files changed, 15 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- 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()}.