Java IndexOutOfBounds:为什么低点总是超过高点

Java IndexOutOfBounds:为什么低点总是超过高点,java,for-loop,arraylist,indexoutofboundsexception,quicksort,Java,For Loop,Arraylist,Indexoutofboundsexception,Quicksort,下面的if语句不断出现IndexOutOfBounds错误,我不知道为什么。low最初为0,high设置为24,ArrayList的大小为25 for(int i = low + 1; low <= high; i++){ if(list.get(i).compareTo(list.get(pivIndex)) < 0){ //this line E temp = list.get(pivIndex);

下面的if语句不断出现IndexOutOfBounds错误,我不知道为什么。low最初为0,high设置为24,ArrayList的大小为25

        for(int i = low + 1; low <= high; i++){
                if(list.get(i).compareTo(list.get(pivIndex)) < 0){ //this line
                E temp = list.get(pivIndex);
                list.remove(pivIndex);
                list.add(pivIndex, list.get(i));

                list.remove(i);
                list.add(i, temp);
            }
        }

for(int i=low+1;low你没有绑定
i
。你的for循环条件是
low你没有绑定
i
。你的for循环条件只是检查
low我在过去一天一直在关注这个问题……非常感谢你