Java - 设置i从0开始,i <arraylist.size(),i ++ ...超出界限错误

Rae*_*kye -2 java indexing arraylist

不要以为有很多话要说,这是我的代码

for (int i = 0; i < numFactors.size(); i++) {
    for (int j = 0; i < denFactors.size(); j++) {
        if (numFactors.get(i) == denFactors.get(j)) {
            commonFactors.add(numFactors.get(i));
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我得到了这个错误

Exception in thread "Thread-4" java.lang.IndexOutOfBoundsException: Index: 4, Size: 4
    at java.util.ArrayList.RangeCheck(Unknown Source)
    at java.util.ArrayList.get(Unknown Source)
    at com.creatif.cubes.Fraction.simplify(Fraction.java:64)
Run Code Online (Sandbox Code Playgroud)

第64行在if语句处.我不能为我的生活在这里找到问题.

Nan*_*nne 5

这条线

 for (int j = 0; i < denFactors.size(); j++) {
Run Code Online (Sandbox Code Playgroud)

应该

 for (int j = 0; j < denFactors.size(); j++) {
Run Code Online (Sandbox Code Playgroud)

我相信.

-此外,您可能想打电话给所有.size()的外侧for.你每次循环运行时调用它:)