上这堂课
public class MyClass {
private List list1 = new ArrayList();
private List list2 = new ArrayList();
. . .
}
是否有可能以这种代码可以工作的方式在类中实现Iterable ?:
MyClass a = new MyClass();
for(Integer i: a) {
}
for(String s: a) {
}
让我澄清一下,我知道如何以其他方式进行迭代,即使我知道可以为每种列表类型创建一个迭代器,我也想知道这种特定形式的迭代是否可行.
解决方法:
为了使其正常工作,您可以实现java.lang.Iterable接口并在ClassA中重写Iterable#iterator()方法,但是只有一个循环将被编译,因为迭代将仅应用于列表中的一个.
更好地为列表提供访问器,然后执行以下操作:
for(Integer i: a.getIntList()) {
}
for(String s: a.getStringList()) {
}
标签:iterator,java,android
来源: https://codeday.me/bug/20191122/2056983.html