gpt4 book ai didi

Java - 迭代器 : "Syntax error, parameterized types are only available if source level is 5.0"

转载 作者:行者123 更新时间:2023-11-29 04:01:49 25 4
gpt4 key购买 nike

我特意以 Java OS 1.4.2 为目标

我正在尝试结合 apache 的 POI 使用迭代器来读取 excel 电子表格。

代码在 java 1.5 中运行完美,但在 1.4.2 版本中我得到问题主题中列出的错误。

代码是:

Iterator<HSSFRow> myIter = null;

*更新 - 删除了空声明,并立即将其设置为集合。仍然得到同样的错误! “Iterator cannot be resolved to a type”(迭代器是一种抽象类型)。在我尝试从迭代器获取值之前发生此错误!

Iterator itRows = hsSheet.rowIterator();

    • 我还导入了 HSSFRow 变量

它在那行代码处中断,这行代码显然位于应用程序的开头。我不明白需要做什么来纠正这个问题。如果您有任何见解,请告诉我!

最佳答案

1.5 以下版本的 Java 不处理泛型类型(又名由其他类型参数化的类型:List)。

要在 Java 1.4 中运行您的代码,您需要放弃泛型类型参数并自己进行强制转换。

Iterator myIterator = // initialize it
HSSFROW row = (HSSFROW)myIterator.next();

一个更完整的例子:

List collection = new ArrayList();

collection.add("a");
collection.add("b");
collection.add("c");

Iterator myIterator = collection.iterator();

while ( myIterator.hasNext() ) {
String value = (String) myIterator.next();
System.out.println("value: " + value);
}

输出为:

value: a
value: b
value: c

关于Java - 迭代器 : "Syntax error, parameterized types are only available if source level is 5.0",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2985530/

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