Slowness of JDK 1.1.x String.intern() [was Re: SAX, Java,
and Namespaces ]
Tim Bray
tbray at textuality.com
Fri Feb 5 18:21:13 GMT 1999
At 10:12 AM 2/5/99 -0800, Jeff Greif wrote:
>JDK 1.1.7 intern is native, but is slow because it first converts the
>characters in the string
Actually, the real reason that most XML parsers will *never* use
built-in intern is because they probably have the name available in a
character array, and can go look things up in the handcrafted
table without String-i-fying it - thus skipping several steps
of work that a built-in intern is going to have to do. E.g. Lark's
symbol table is a double array, storing both the character-array
and String version of each name - you lookup based on the
character array and return the string if it's already there. The
point is that you call new String() only once per unique name.
-Tim
xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)
More information about the Xml-dev
mailing list