gpt4 book ai didi

java - 当 Arraylist 大小为 139 时,索引 6 上出现 IndexOutOfBoundsException

转载 作者:太空宇宙 更新时间:2023-11-04 08:04:25 25 4
gpt4 key购买 nike

我有一个名为 A 的类。在这个类中,我有一个字符串名称以及该字符串的 setter 和 getter。我还有一个正在初始化的列表,如下所示:

List<A>myList = ArrayList<A>(SomeOtherList);

现在,当我检查 ArrayList 的大小时,我可以看到列表的大小是 139,但是当我尝试获取索引 6 中的值时,我得到了

java.lang.IndexOutOfBoundsException:索引:6,大小:6。

但是如果我尝试在 for 循环中打印 0 - 138 之间的值,我将不会得到异常,

String name = myList.get(6).getName(); // Exception

for(int i = 0 ; i < 139 ; i++){
System.out.println(myList.get(i).getName());
}//will work

有人遇到过这个问题吗???

for循环将所有139个名字打印到控制台但是当代码到达 get 函数的行时,我收到流异常:

Caused by: java.lang.IndexOutOfBoundsException: Index: 6, Size: 6
at java.util.ArrayList.RangeCheck(ArrayList.java:547)
at java.util.ArrayList.get(ArrayList.java:322)
at com.icap.dashboard.DashboardPage.getSelectionFromCookie(DashboardPage.java:337)
at com.icap.dashboard.DashboardPage.addCCYPanelAndChannels(DashboardPage.java:149)
at com.icap.dashboard.DashboardPage.<init>(DashboardPage.java:107)
... 52 more

我使用maven编译我的项目,ArrayList的初始化是使用Collection Nanes

最佳答案

这有效:

import java.util.*;

public class StackOverflow {

public static void main(String[] args) {
List<A> SomeOtherList = new ArrayList<A>();
for(int i = 0; i < 139; i++) {
SomeOtherList.add(new A().setName(String.valueOf(i)));
}
List<A> myList = new ArrayList<A>(SomeOtherList);

System.out.println("random access: " + myList.get(6).getName());

for(int i = 0 ; i < myList.size() ; i++){
System.out.println(myList.get(i).getName());
}

}

public static class A {
String name;

public A setName(String theName) { this.name = theName; return(this); }
public String getName() { return(this.name); }
}
}

尝试将此工作示例与您的数据一起使用。

关于java - 当 Arraylist 大小为 139 时,索引 6 上出现 IndexOutOfBoundsException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12301696/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com