gpt4 book ai didi

java - 我需要有关使用 for 循环的方法的帮助

转载 作者:行者123 更新时间:2023-12-01 15:56:34 26 4
gpt4 key购买 nike

  public void collect( int ordNum )
{
Basket b = new Basket(ordNum);
for (Basket b : conveyerBelt) { // line 4
readyCollected.add(b);
}
}

我试图用这个方法做的是在 ArrayList 中搜索 orderNum。当我找到它时,我想将我输入的orderNum添加到readyCollected中。问题:我在第 4 行收到错误消息。

想知道你们是否可以帮助我实现这个方法。

顺便说一句,传送带已经包含带有订单号的篮子。假设传送带包含订单号为 3 的篮子,我输入 3,我希望它将篮子添加到包含订单号 3 的 Arraylist readyCollected 中。

最佳答案

我猜你的错误是传送带不是可迭代的。要使用 foreach 构造,您必须确保要迭代的对象实现了 Iterable。

http://java.sun.com/docs/books/jls/third_edition/html/statements.html#14.14.2

摘录:

表达式必须具有 Iterable 类型,或者必须是数组类型(第 10.1 节),否则会发生编译时错误。

在增强的 for 语句(第 14.14 节)的 FormalParameter 部分中声明的局部变量的范围是所包含的语句

增强型 for 语句的含义是通过翻译为基本 for 语句来给出的。

如果 Expression 的类型是 Iterable 的子类型,则令 I 为表达式 Expression.iterator() 的类型。增强的 for 语句相当于以下形式的基本 for 语句:

for (I #i = Expression.iterator(); #i.hasNext(); ) {

VariableModifiersopt Type Identifier = #i.next();
Statement
}

关于java - 我需要有关使用 for 循环的方法的帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4936752/

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