如何将用户定义的对象添加到LinkedList



我试图将我的用户定义对象添加到链表中,但是每次添加时,信息都会被复制。

public class Videostore(){
    public LinkedList<Video> videoList = new LinkedList<>();
    public Videostore(){
        addVideo("a");
        addVideo("b");
        addVideo("c");
    }
    private void addVideo(String o){  
        Video vid = new Video(o);
        videoList.add(vid);     
    }
}
public class Video {
    public static Object title;
    public static boolean isRent;
    public Video(String t){
        title = t;
        isRent = false;
    }
    public static void setisRent(boolean bool){
        isRent = bool;
    }
    public String toString(){
        return title.toString();
    }
}

当Video Store初始化时,videoList里面只有"c"。我需要它有b和c

问题是您的Video类变量是static,这意味着整个类中每个变量只有一个副本。它们会被每个新实例覆盖。

Video ---> "c"
         ^ ^
Video --/ /
         /
Video --/

删除static使它们成为实例变量,这意味着类的每个实例都有一个。这样这些值就不会相互覆盖。

Video ---> "a"
Video ---> "b"
Video ---> "c"

相关内容

  • 没有找到相关文章

最新更新