String类的subString(a,b)方法(基于jdk 1.9)

时间:2024-06-09 17:03:38

基于上文:http://www.jianshu.com/p/a20ee3bb9c1b

public String substring(int beginIndex, int endIndex) {
int length = length();
checkBoundsBeginEnd(beginIndex, endIndex, length);
int subLen = endIndex - beginIndex;
if (beginIndex == 0 && endIndex == length) {
return this;
}
return isLatin1() ? StringLatin1.newString(value, beginIndex, subLen)
: StringUTF16.newString(value, beginIndex, subLen);
}

substring(int beginIndex, int endIndex) 与 substring(int beginIndex)

不同在于 subLen 的赋值;

得出结论:subString(a,b)返回值是 str的索引位置a,到索引位置b(包括a,不包括b)