是的,我知道如何解决这个问题。我正在研究字符串类和字符串生成器类之间的API。以下是我的问题:
StringBuilder sb = new StringBuilder("wibble");
String s = new String("wobble");
sb.charAt(index) //Can throw Index Out Of Bounds Exception
s.charAt(index) //Can throw Index Out of Bounds Exception
sb.substring(start, end) //Can throw STRING index out of bounds exception
s.substring(start, end) //Only throws Index out of Bounds Exception (no String)
因此,当它决定抛出StringIndexOutOfBoundsException与IndexOutOfBoundsException时,没有意义。是的,我知道StringIndex是一个子例外。在 String 和 StringBuilder 中,某些具有相同实现的方法会引发相同的异常,而在某些具有相同实现的方法中,StringBuilder 会引发 sub 异常。这是为什么呢?
为了节省人们滚动浏览答案的时间,并感谢2个人回答,即使我只能选择一个作为答案,两者都有助于澄清:Java Oracle Doc People在String的子字符串中打错了。它应该是StringIndexOutOfBoundsException。与 StringBuilder 中的 CharAt() 相同
幕布斯6054654
绝地无双
相关分类