On 22/06/2012 23:15, Mike Duigou wrote:
:
- The CharSequences returned by subSequence would follow only the general
CharSequence rules for equals()/hashCode(). Any current usages of the result of
subSequence for equals() or hashing, even though it's not advised, would break.
We could add equals() and hashCode() implementations to the CharSequence
returned but they would probably be expensive.
I think Jason's idea to use CharBuffer.wrap(...).asReadOnlyBuffer() is a
great idea too. However as you mention hashCode/equals then one thing to
remember is that they depend on the number of remaining elements. It
should be okay assuming that someone doesn't cast to a CharBuffer and
invokes a method that changes the position or limit but even so, you
won't get any caching of the hash code.
-Alan