gpt4 book ai didi

java - 搜索中的 IndexOutOfBoundsException

转载 作者:行者123 更新时间:2023-12-01 06:40:43 27 4
gpt4 key购买 nike

我遇到一个问题,它返回给我以下错误

Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 2, Size: 1
at java.util.ArrayList.RangeCheck(ArrayList.java:547)
at java.util.ArrayList.get(ArrayList.java:322)
at graphsshahar.TestDijkstra.main(TestDijkstra.java:38)

我的程序获取一个对象列表,我需要在列表中找到等于一的对象然后打印它,这是代码

    public static void main (String [] args){
System.out.println("begin");

int one = 2;
int two = 10;
List<Conniction> tempDeal = ConnictionDAO.getInstance().findPath(one, two);

List<String> oneid = new ArrayList<String>();
List<String> twoid = new ArrayList<String>();

for (int j = 1; j <= tempDeal.size(); j++) {
System.out.println("get");
if( Integer.parseInt(tempDeal.get(j).getOneid()) == one )
{
oneid.add(tempDeal.get(j).getOneid());
System.out.println(oneid.get(j));

}

}
System.out.println("end");

我应该解决什么问题?我不知道 if 语句有什么问题

最佳答案

只需用此 j < tempDeal.size() 更改您的即可编号从 0 开始,而不是从 1 开始。

for (int j = 0; j < tempDeal.size(); j++) { ... }

如果您使用j = 1您无法在 0 位置获取元素。


更新:您还可以使用像 @AVD 这样的迭代器。

for(Conniction member: tempDeal) {
// do work
}

关于java - 搜索中的 IndexOutOfBoundsException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11246822/

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