add 関数hereの ArrayList ドキュメントを読むと、明らかに無効なインデックスに要素を追加すると、IndexOutOfBoundsException がスローされます。しかし、次のコードが例外をスローしないのはなぜでしょうか?
public static void main(String args[]){
List cities = new ArrayList();
cities.add("Atlanta");
cities.add("Boston");
try {
for (int i = 10000000; i < cities.size(); i++){
try {
cities.add(i, "+");
} catch (Exception e) {
e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
}
System.out.println(cities.size());
}
} catch (Exception e) {
e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
}
System.out.println(cities);
}
出力:
[Atlanta, Boston]
Process finished with exit code 0
私は現在jdk 7を使用しており、intellijのアイデアで実行しています。