java.lang.StringIndexOutOfBoundsException怎么回事

 我来答
雪飞潇潇
2017-10-23 · TA获得超过6275个赞
知道大有可为答主
回答量:1968
采纳率:91%
帮助的人:872万
展开全部

字符串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
}
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式