Java 如何将用户定义的对象添加到LinkedList?
我试图将用户定义的对象添加到链接列表中,但是每次添加时,信息都会重复Java 如何将用户定义的对象添加到LinkedList?,java,object,linked-list,user-defined-functions,Java,Object,Linked List,User Defined Functions,我试图将用户定义的对象添加到链接列表中,但是每次添加时,信息都会重复 public class Videostore(){ public LinkedList<Video> videoList = new LinkedList<>(); public Videostore(){ addVideo("a"); addVideo("b"); addVideo("c"); } private voi
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();
}
}
public class Videostore(){
public LinkedList videoList=新建LinkedList();
公共音像店(){
addVideo(“a”);
addVideo(“b”);
addVideo(“c”);
}
私有void addVideo(字符串o){
视频视频=新视频(o);
视频列表。添加(视频);
}
}
公开课视频{
公共静态对象标题;
公共静态布尔信息;
公共视频(字符串t){
title=t;
isRent=false;
}
公共静态void setisRent(布尔布尔布尔值){
isRent=bool;
}
公共字符串toString(){
返回title.toString();
}
}
初始化视频存储时,视频列表中只有“c”。我需要它有一个b和c 问题是您的
视频
类变量是静态的
,这意味着整个类中每个变量只有一个副本。它们会被每个新实例覆盖
Video ---> "c"
^ ^
Video --/ /
/
Video --/
删除static
,使其成为实例变量,即类的每个实例都有一个变量。这样这些值就不会相互覆盖
Video ---> "a"
Video ---> "b"
Video ---> "c"
问题是您的
视频
类变量是静态
,这意味着整个类中每个变量只有一个副本。它们会被每个新实例覆盖
Video ---> "c"
^ ^
Video --/ /
/
Video --/
删除static
,使其成为实例变量,即类的每个实例都有一个变量。这样这些值就不会相互覆盖
Video ---> "a"
Video ---> "b"
Video ---> "c"