> Please review this PR and [CSR](https://bugs.openjdk.org/browse/JDK-8314607) 
> which clarifies the behavior of patterns  in regards to the max integer 
> digits in j.text.DecimalFormat.
> 
> The current specification (of `applyPattern`) states that patterns do not set 
> the value of max integer digits. This is incorrect, these 
> methods/constructors do set a value for the max integer digits. If the 
> pattern is in scientific notation, the max integer digits value is derived 
> from the pattern. Otherwise, the pattern is ignored, and the limit is set to 
> `Integer.MAX_VALUE`.
> 
> See below,
> 
> DecimalFormat df = new DecimalFormat();
> df.applyPattern("000.000E0");
> df.getMaximumIntegerDigits(); //  ==> 3
> df.applyPattern("000.000");
> df.getMaximumIntegerDigits(); // ==> 2147483647
> 
> DecimalFormat df = new DecimalFormat("000.000");
> df.getMaximumIntegerDigits(); // ==> 2147483647
> DecimalFormat df = new DecimalFormat("000.000E0");
> df.getMaximumIntegerDigits(); // ==> 3
> 
> 
> Method descriptions should be fixed, and the relevant constructors need to 
> mention the behavior as well.

Justin Lu has updated the pull request incrementally with one additional commit 
since the last revision:

  Reflect review comments: Non sci notation first. Link to Scientific Notation 
section

-------------

Changes:
  - all: https://git.openjdk.org/jdk/pull/15349/files
  - new: https://git.openjdk.org/jdk/pull/15349/files/3702f48b..93b0053e

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=15349&range=01
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=15349&range=00-01

  Stats: 33 lines in 1 file changed: 4 ins; 0 del; 29 mod
  Patch: https://git.openjdk.org/jdk/pull/15349.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/15349/head:pull/15349

PR: https://git.openjdk.org/jdk/pull/15349

Reply via email to