标签: java
我尝试了代码"a".substring(1, 1)并且没有抛出异常。但是起始索引是1,它大于0,并且因为起始索引是包含的,所以不应该抛出异常吗?
"a".substring(1, 1)
同样,"".substring(0, 0)也不会崩溃,即使0应该超出空字符串的范围。
"".substring(0, 0)
答案 0 :(得分:10)
根据方法的文件:
抛出: IndexOutOfBoundsException - 如果beginIndex为负或大于此String对象的长度。
你的字符串的长度是1而不是0,所以它不会抛出和异常。