下面的代码片段是我正在为作业阅读的一些代码的一部分,但我无法理解代码段中copy
变量的作用或它的作用。我知道它是Sample类的一个实例,但为什么它被分配ArrayList
我不清楚。
public class Sample implements Var{
private List lst1;
private List lst2;
public Sample() {
super();
}
public Sample(List lst1) {
this();
this.lst1 = lst1;
}
public List getLst1() {
return lst1;
}
public void setLst1(List lst1) {
this.lst1 = lst1;
}
@Override
public Var copy(){
Sample copy = new Sample(lst1);
copy.lst2 = new ArrayList(lst2);
return copy;
}
@Override
public void randomize(){
}
}
答案 0 :(得分:0)
实际上,错误消息是明确的,表明您无法迭代变量copy
,因为您尚未实现允许您执行此操作的Iterable
接口。如果你坚持循环并拥有允许你这样做的功能:只需访问此链接Java Generics - Implementing the Iterable Interface,你可以在这里例证(如果这是你想要的)迭代实例的两个列表的元素lst1
和lst2