Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为什么会抛出IndexOutOfBoundsException?_Java_Exception_Arraylist_Indexoutofboundsexception - Fatal编程技术网

Java 为什么会抛出IndexOutOfBoundsException?

Java 为什么会抛出IndexOutOfBoundsException?,java,exception,arraylist,indexoutofboundsexception,Java,Exception,Arraylist,Indexoutofboundsexception,为什么在下面的代码段中抛出IndexOutOfBoundsException? 我似乎不明白它为什么会被扔出去 import java.util.*; public class PrimeNumbers { //Printing all prime numbers less than 600 using 'Sieve Method' final static int SIZE = 600; static ArrayList<

为什么在下面的代码段中抛出IndexOutOfBoundsException? 我似乎不明白它为什么会被扔出去

    import java.util.*;
    public class PrimeNumbers {

        //Printing all prime numbers less than 600 using 'Sieve Method'
        final static int SIZE = 600;
        static ArrayList<Integer> numbers = new ArrayList<Integer>(SIZE);


        public static void populateList(ArrayList<Integer> arraylist){
            for(int i=0; i<SIZE; i++){
                arraylist.add(i, i);
            }
        }

        public static void filterMultiples(ArrayList<Integer> arraylist){
            for(int i=0; i<SIZE; i++){
                if(arraylist.get(i)%2==0 || arraylist.get(i)%3==0 || arraylist.get(i)%5==0){
                    arraylist.remove(i);
                    }
                }
            }

        public static void main(String[] args){
            populateList(numbers);
            filterMultiples(numbers);
            System.out.println(numbers);

        }
    }

for(int i=0;i此块中存在错误:

       for(int i=0; i<SIZE; i++){
            if(arraylist.get(i)%2==0 || arraylist.get(i)%3==0 || arraylist.get(i)%5==0){
                arraylist.remove(i);
                }
            }
        }
for(int i=0;i
for(int i=0; i<SIZE; i++){
    if(arraylist.get(i)%2==0 || arraylist.get(i)%3==0 || arraylist.get(i)%5==0){
        arraylist.remove(i);
        }
    }
}
       for(int i=0; i<SIZE; i++){
            if(arraylist.get(i)%2==0 || arraylist.get(i)%3==0 || arraylist.get(i)%5==0){
                arraylist.remove(i);
                }
            }
        }
    for (Iterator<Integer> iterator = numbers.iterator(); iterator.hasNext();) {
        int number = iterator.next();
        if (number % 2 == 0 || number % 3 == 0
                || number % 5 == 0) {
            iterator.remove();
        }
    }