Am 20.03.2013 16:00, schrieb Alexander Zuev:
AbstractStringBuilder:
Instead
270 public int codePointBefore(int index) {
271 int i = index - 1;
272 if ((i < 0) || (i >= count)) {
273 throw new StringIndexOutOfBoundsException(index);
274 }
I suggest
270 public int codePointBefore(int index) {
271 if ((--index < 0) || (index >= count)) {
272 throw new StringIndexOutOfBoundsException(index);
273 }
, because if e.g. the initial value of index is 0, then -1 reflects the out-of-bound condition, but not the initial 0 to report in the StringIndexOutOfBoundsException.
OTOH in case of upper index out of bounds with your code we will report exception reporting number laying within the allowed range which may be confusing.

Yes, difficult to decide, but keep in the back of your mind, it's called _String_IndexOutOfBoundsException, not _CodepointAt_IndexOutOfBoundsException

Just my $.02

adding my -,02 €

-Ulf

Reply via email to