On Mon, 27 Feb 2023 11:02:34 GMT, Alan Bateman <al...@openjdk.org> wrote:

>> @viktorklang-ora I agree that the behavior w.r.t. out-of-range indices is at 
>> odd with the `substring()` family, but this inconsistency is already present 
>> since the dawn of time ;-)
>
> Consistency with the indexOf/lastIndexOf methods is good, it makes it look 
> like the method has been there since JDK 1.0. At the same time, it could mean 
> that bugs go undetected, e.g. it would be easy to assume the range is 
> fromIndex + length or to specify the parameters in the wrong order. I don't 
> know if you explored other options but if the new method had a new name then 
> maybe you have the option to throw for out of range index values.

@AlanBateman I can propose variants of forward-searching 
_some-prefix_`IndexOf()` which are consistent with `substring()` in their 
handling of the indices, but I'd then rather prefer to file another JBS issue 
and prepare another PR.

The proposed 3 parameters variant of `indexOf()` _is_ the real "primitive" of 
the family. The other ones are mere shortcuts.

-------------

PR: https://git.openjdk.org/jdk/pull/12600

Reply via email to