StringBuilder version of java.util.regex.Matcher.append*

Jeremy Manson jeremymanson at
Wed Mar 19 17:41:30 UTC 2014

Hi folks,

We've had this internally for a while, and I keep meaning to bring it up
here.  The Matcher class has a few public methods that take StringBuffers,
and we've found it useful to add similar versions that take StringBuilders.

It has two benefits:

- Users don't have to convert from one to the other when they want to use
the method in question.  The symmetry is nice.

- The StringBuilder variants are faster (if lock optimizations don't kick
in, which happens in the interpreter and the client compiler).  For
interpreted / client-compiled code, we saw something like a 25% speedup on
String.replaceAll(), which calls into this code.

Any interest?  Diff attached.


More information about the core-libs-dev mailing list