On Mon, 8 Mar 2021 16:00:27 GMT, Claes Redestad <redes...@openjdk.org> wrote:

>> This patch optimizes String.format expressions that uses trivial specifiers. 
>> In the JDK, the most common variation of String.format is a variation of 
>> format("foo: %s", s), which gets a significant speed-up from this.
>> 
>> Various other cleanups and minor improvements reduce overhead further and 
>> ensure we get a small gain also for more complex format strings.
>
> Claes Redestad has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   Lazily evaluate zero

src/java.base/share/classes/java/util/Formatter.java line 2447:

> 2445:     private char zero() {
> 2446:         char zero = this.zero;
> 2447:         if (zero == 0) {

U+0000 is a valid character. Although it's almost no possibility where any 
locale assigns it as the zero in it, theoretically it is possible. It can be 
avoided by comparing it with a non-character, such as BOM (U+FFFE)

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

PR: https://git.openjdk.java.net/jdk/pull/2830

Reply via email to