首先,使用substring截取字符串时,可能会出现两种异常,分别是StringIndexOutOfBoundsException和NullPointerException。
 
 即字符串索引越界异常 与 空指针异常
 
 
 引起 字符串索引越界异常(StringIndexOutOfBoundsException)有以下几种情况:
 1. 当使用substring时,第一个入参和第二个入参之和不能大于要截取的字符串长度
 避免此错误可以在执行substring之前,进行判断。 如果一边数据写死,比如要截取的长度,就用这个固定值和字符串长度进行比较。
 2. 起始位下标不能小于0
 3. endIndex - beginIndex 不能小于0
 4. 截取的字符串为 ""
  而空指针异常(NullPointerException)只会在 “被截取字符串为null时” 会触发。
  
针对这些引发问题的原因,我们需要在使用substring时时刻注意,做好校验,避免此类异常的产生。