解决 Java 中错误 Can Only Iterate Over an Array or an Instance of Java.Lang.Iterable

我们将了解 Java 错误 Can only iterate over an array or an instance of java.lang.iterable。 我们将了解为什么会出现此错误以及解决方案。

因此,事不宜迟,让我们开始吧。


can only iterate over an array or an instance of java.lang.iterable 的实例

这个错误是编译时错误,正如它所说的那样。 当数组或实例的迭代出现问题时,就会发生这种情况。

在编程时,用户试图使事情变得更容易,并且在这样做时,用户使用循环。 然而,使用循环并不总是正确的答案。

该错误 can only iterate over an array or an instance of java.lang.iterable 的实例并不意味着它会阻止用户在数组或实例上使用循环。 这意味着使用的循环不能补充其条件 - 例如 for 或 foreach 循环。


使用 Iterator() 解决 Can Only Iterate Over an Array or an Instance of java.lang.iterable 错误

在循环的情况下,如果使用 foreach 循环,我们必须显式键入迭代,因为有时 foreach 可能会导致发生此错误。 我们可以通过使用迭代器来做到这一点。

另一种方法是使用简单的 for 或 while 循环。

下面是一个使用带有 while 循环的迭代器显式迭代数组的简单示例。 这里我们将使用ArrayList来演示 Iterator()

这里使用ArrayList,因为Iterator()是ArrayList类的方法。

这里使用 while 循环来使事情变得更容易。 这是因为在使用其他循环(例如 for 和 foreach)时,Iterator() 方法无法正常工作。

由于 Iterator() 是集合方法的一部分,因此它可以与特定循环(例如 while 循环)一起正常工作。

代码:

java 复制代码
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.function.Consumer;

public class Main
{
    public static void main(String[] args)
    {
        List<Integer> Num = new ArrayList<>(); //ArrayList is used here
        Num.add(1);
        Num.add(2);
        Num.add(3);
        Num.add(4);

        Iterator<Integer> value = Num.iterator(); //Here is the use of Iterator()
        while (value.hasNext()) //hasNext() is used to loop. It is a method of Iterator()
        {
            System.out.println(value.next());
        }
    }
}

输出:

bash 复制代码
1
2
3
4
相关推荐
带土12 分钟前
6. C++智能指针(1)
开发语言·c++
你曾经是少年7 分钟前
Java 关键字
java
海南java第二人10 分钟前
SpringBoot启动流程深度解析:从入口到容器就绪的完整机制
java·开发语言
问今域中12 分钟前
Spring Boot 请求参数绑定注解
java·spring boot·后端
星火开发设计14 分钟前
C++ queue 全面解析与实战指南
java·开发语言·数据结构·c++·学习·知识·队列
rgeshfgreh16 分钟前
Java+GeoTools+PostGIS高效求解对跖点
java
鱼跃鹰飞17 分钟前
DDD中的防腐层
java·设计模式·架构
计算机程序设计小李同学19 分钟前
婚纱摄影集成管理系统小程序
java·vue.js·spring boot·后端·微信小程序·小程序
DICOM医学影像22 分钟前
2. go语言从零实现以太坊客户端-查询区块链账户余额
开发语言·golang·区块链·以太坊·web3.0·hardhat
Data_agent33 分钟前
Python 编程实战:函数与模块化编程及内置模块探索
开发语言·python