** 在 String 中提供了两个截取字符串的方法,一个是从指定位置截取到字符串结尾,另一个是截取指定范围的内容。**
-
- substring(int beginIndex)
此方式用于提取从索引位置开始至结尾处的字符串部分。调用时,括号中是需要提取字符串的开始位置,方法的返回值是提取的字符串。
-
- substring(int beginIndex,int endIndex)
此方法中的 beginIndex 表示截取的起始索引,截取的字符串中包括起始索引对应的字符;endIndex 表示结束索引,截取的字符串中不包括结束索引对应的字符,如果不指定 endIndex,则表示截取到目标字符串末尾。该方法用于提取位置 beginIndex 和位置 endIndex 位置之间的字符串部分。
示例:
public class testSubString {
public static void main(String[] args) {
String str = "abcdefg";
String str1 = str.substring(2);
String str2 = str.substring(2, 5);
System.out.println("第一种方式:" + str1);
System.out.println("第二种方式:" + str2);
}
}
输出结果:
第一种方式:cdefg
第二种方式:cde
可以看到,第一种是从下标为 2 的字母 c 开始截取字符串后面的所有字符。
第二种方法中的下标为 (2, 5),下标 2 对应的字母是 c,下标 5 对应的字母是 f,而截取到的字符串只截取到了 f 的前一个字母, f 并没有截取到。因此,这也说明了第二种方法截取到的字符串不包括结束索引对应的字母。如果想包括,要在结束索引上 + 1。