string index out of range字符串的索引越界的解决办法

字符串异常:String index out of range: -2
使用字符subString操作的时候,经常会出现一个String index out of range: -1,这个是典型的下标越界,其实位置小于0,结束位置大于字符长度都会报 -1 这个异常。

-2这个异常就比较少见了,但是可以确定,它是和-1不同的异常,但是同样发生在subString方法里面;

这个异常挺难触发的,但是遇见了挺尴尬的。
答案就是subString(startIndex,endIndex)的时候,end比start小了;
至于为什么会出现end比start小的情况,就需要排查了,可能两个参数都是indexOf来的,但是字符有点小问题;

在做算法题时遇到了报错,原因是字符串的索引越界。

查看自己的代码,原来int的类型范围越界

int的范围:-2147483648——-2147483647

long的范围:-9223372036854775808——-9223372036854775807

把int该为long就可以了