String.substring() question

Boehm, Hans hans_boehm@hp.com
Wed May 16 17:28:00 GMT 2001


> From: Tom Tromey [ mailto:tromey@redhat.com ]
>> Right now String.substring() always creates a reference to the old
> string's data. I wonder if that is always what we want. I think
> perhaps if the old String is very large and the new substring is very
> small, then we might consider making a copy.
That will have the added advantage that the collector won't have to ever
look at the new string. That matters if it's very long-lived. I have no
idea how often that happens in practice.
> Or maybe for very large
> Strings we could consider playing some game involving weak references?
I suspect that it's almost always cheaper to copy a short string then to
generate a weak reference.
> Or maybe this is a nonissue -- maybe people don't make huge Strings
> often enough for it to be worthwhile.
>> I'm not aware of any data that would help us make these sorts of
> decisions. Bummer.
Neither am I.
Hans


More information about the Java mailing list

AltStyle によって変換されたページ (->オリジナル) /