java.lang.StringIndexOutOfBoundsException怎么回事
展开全部
字符串String的底层也是一个char[]数组
字符串的下标索引和数组一样, 都是从 0开始计算
比如 "abc" a的下标是0 ,b的下标是1,c的下标是2
当通过一些方法去操作字符串对象, 获取指定下标的值时 ,注意,范围要在字符串的下标范围内.
错误案例一
String str = "abc";//下标范围[0-2]
char c = str.charAt(88);
System.out.println(c);
错误案例二
String str = "abc";
String s1 = str.substring(-100, 2);
System.out.println(s1);
正确的示范
public class Test {
public static void main(String[] args) {
String str = "abc";
String s1 = str.substring(1, 3); //这里的区间范围是1~3 ,数学上是[1,3) 意思是最小下标是1.最大下标是2 ,不包含3
System.out.println(s1);//输出bc
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询