Java 多个位置的IndexOutOfBoundsException
只是做了一些编码,在我的代码中遇到了这个错误,但不完全确定原因Java 多个位置的IndexOutOfBoundsException,java,for-loop,arraylist,Java,For Loop,Arraylist,只是做了一些编码,在我的代码中遇到了这个错误,但不完全确定原因 import java.util.*; public class JavaApplication5 { public static void main(String[] args) { int val; int[] arrayE = {-2, 2, 3, 0}; int[] arrayC = new int[4]; arrayC[0] = 10; arrayC[1] = 20;
import java.util.*;
public class JavaApplication5 {
public static void main(String[] args) {
int val;
int[] arrayE = {-2, 2, 3, 0};
int[] arrayC = new int[4];
arrayC[0] = 10;
arrayC[1] = 20;
arrayC[2] = 30;
arrayC[3] = 40;
for (val = 0; val < 4; val++){
System.out.printf(arrayE[val] + " ");
System.out.println(arrayC[val] + " ");
}
Map<String, Integer> ageMap = new HashMap<String, Integer>();
ageMap.put("Jill", 3);
ageMap.put("Kevin", 5);
ageMap.put("James", 5);
ageMap.put("Louise", 5);
ageMap.put("Peter", 2);
ageMap.put("Sally", 1);
ageMap.remove("Kevin");
ageMap.put("Jill", 1);
System.out.println(ageMap.get(1));
System.out.println(ageMap.values());
System.out.println(ageMap.containsKey("Kevin"));
System.out.println(ageMap.keySet());
System.out.println(ageMap.get("Jill"));
ArrayList listOne = new ArrayList();
listOne.add("hello3");
listOne.add("hello4");
listOne.add("hello2");
listOne.add("hello6");
listOne.add("hello5");
listOne.add("hello1");
for (int i = 0; i <= listOne.size(); i++){
System.out.println(listOne.get(i));
}
}
public int max(int[] vals){
int result = vals[0];
for(int i: vals){
if(i > result)
{
result = i;
}
}
return result;
}
}
知道为什么我的for循环会产生这样的错误吗?谢谢你的帮助 列表索引是从零开始的。换句话说,如果一个列表中有N个项目,那么第一个将有索引
0
,最后一个将有索引N-1
。迭代listOne
时,终止条件应使用changei
Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 6, Size: 6
at java.util.ArrayList.rangeCheck(ArrayList.java:653)
at java.util.ArrayList.get(ArrayList.java:429)
at javaapplication5.JavaApplication5.main(JavaApplication5.java:48)
for (int i = 0; i < listOne.size(); i++) {
// Here ------^