[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: String interning (WAS: SAX2/Java: Towards a final form)

  • From: David Brownell <david-b@p...>
  • To: xml-dev-digest@i...
  • Date: Fri, 14 Jan 2000 12:09:54 -0800

java digest string
[ I got two copies of this, one direct and one to list -- I
responded to the former, just noticed the latter, am summarizing
a key point here: ]

This is highly dependant on "N", and the type of work being
done in those branches.  I've typically observed N to be low,
on the order of a dozen (usually less).  Averaging out to N/2
comparisons, at two instructions each (test, branch), that's
easily less than the cost of two method calls alone (lookup,
dispatch to handler), not to omit the lookup itself (e.g. a
hash, bucket selection, bucket search, lock acquisition and
release, etc).  

The suggested pattern is useful in some cases, but not all.
I use the "==" chain a hundred times before I come across a
case where the dispatch object is appropriate; and that's
as true in applications as in infrastructure.

- Dave


Miles Sabin wrote:
> 
> 	 the only time where the performance difference
> between,
> 
>   foo == "literal"
> 
> and,
> 
>   foo.equals("literal")
> 
> is going to be significant is where there are long chains
> of comparisons, ie.,
> 
>   if(foo == "elem1")
>     // do stuff for elem1
>   else if(foo == "elem2")
>     // do stuff for elem2
> 
>   // ... repeat many times ...
> 
>   else if (foo == "elemn")
>     // do stuff for elemn
> 
> where it'd be a far better idea (both from performance and
> software design POVs) to do something like,
> 
>   ElementHandler handler =
>     (ElementHandler)someTable.lookup(foo);
> 
>   handler.doStuffForElement();
> 
> Cheers,
> 
> Miles
> 
> --
> Miles Sabin                       Cromwell Media

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@i...
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ or CD-ROM/ISBN 981-02-3594-1
Please note: New list subscriptions now closed in preparation for transfer to OASIS.



PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
 

Stylus Studio has published XML-DEV in RSS and ATOM formats, enabling users to easily subcribe to the list from their preferred news reader application.


Stylus Studio Sponsored Links are added links designed to provide related and additional information to the visitors of this website. they were not included by the author in the initial post. To view the content without the Sponsor Links please click here.

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.