将ArrayList对象分配给Instance变量 - java

时间:2018-04-05 22:16:48

标签: java instance

下面的代码片段是我正在为作业阅读的一些代码的一部分,但我无法理解代码段中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(){

    }
}

1 个答案:

答案 0 :(得分:0)

实际上,错误消息是明确的,表明您无法迭代变量copy,因为您尚未实现允许您执行此操作的Iterable接口。如果你坚持循环并拥有允许你这样做的功能:只需访问此链接Java Generics - Implementing the Iterable Interface,你可以在这里例证(如果这是你想要的)迭代实例的两个列表的元素lst1lst2