我希望这个程序给我编译错误,但它编译成功,运行时出现运行时异常。
class substr11
{
public static void main(String args[])
{
String s = "abcde";
System.out.println(s.substring(1,-1));
}
}
编译器错误应该能够解析(字符串在正文中初始化)并发现此字符串操作会导致编译错误对吗?。有人能告诉我为什么它没有抛出编译错误吗?
线程“main”中的异常 java.lang.StringIndexOutOfBoundsException:String ind ex 超出范围:-2 at java.lang.String.substring(Unknown Source) at substr11.main(substr11.java:9)