-
Type:
Bug
-
Resolution: Fixed
-
Priority:
P4
-
Affects Version/s: 17, 21, 23, 24
-
Component/s: core-libs
-
b01
-
generic
-
generic
-
Verified
See the following snippet, which demonstrates unexpected behavior
var fmt = NumberFormat.getCompactNumberInstance(Locale.US, NumberFormat.Style.SHORT)
fmt.parse("5") // returns 5
fmt.parse("5K") // returns 5000
fmt.setParseIntegerOnly(true)
fmt.parse("5K") // returns 5000
fmt.parse("5") // unexpectedly throws StringIndexOutOfBoundsException
The position in parse needs to be checked before invoking charAt.
var fmt = NumberFormat.getCompactNumberInstance(Locale.US, NumberFormat.Style.SHORT)
fmt.parse("5") // returns 5
fmt.parse("5K") // returns 5000
fmt.setParseIntegerOnly(true)
fmt.parse("5K") // returns 5000
fmt.parse("5") // unexpectedly throws StringIndexOutOfBoundsException
The position in parse needs to be checked before invoking charAt.
- links to
-
Commit
openjdk/jdk/6238bc8d
-
Review
openjdk/jdk/19533
-
Review(master)
openjdk/jdk21u-dev/2468