public class ObjetTWS {
String nom;
List<String> jobAmont = new ArrayList<String>();
List<String> jobAval = new ArrayList<String>();
String type;
public ArrayList<ObjetTWS> dependances;
public ObjetTWS() {
}
public ObjetTWS(String p_nom, String p_type, String p_jobAmont,
String p_jobAval) {
ObjetTWS obj = new ObjetTWS();
obj.nom = p_nom;
obj.jobAmont.add(p_jobAmont);
obj.jobAval.add(p_jobAval);
obj.type = p_type;
dependances = new ArrayList<ObjetTWS>();
dependances.add(obj);
}
public void ajouterJob(String p_nom, String p_jobAmont, String p_jobAval) {
}
}
在ObjetTWS(...)中,我用ObjetTWS对象填充我的列表。使用ObjetsTWS(...)中的p_nom,p_type,...值创建对象。我需要在ajouterJob中取回此列表后添加一些其他信息。但我的列表依赖于第一个对象。我怎么能拿到所有的名单?
答案 0 :(得分:1)
在您的代码中,每个ObjectTWS
都有自己的dependances
列表。因此从逻辑上看,您的列表始终只包含一个元素。如果您需要所有对象的列表,请将dependances
变量设为静态。
答案 1 :(得分:0)
您可以更改方法的签名。
public void ajouterJob(List<ObjetTWS> myVariable) {
}
之后用你的变量调用这个方法..
答案 2 :(得分:0)
我想在ajouterJob(...)中使用我的arraylist依赖。我怎么能这样做?
public class ObjetTWS {
public List<ObjectTWS> dependances = new ArrayList<>();
public void ajouterJob(String p_nom, String p_jobAmont, String p_jobAval) {
// use dependances here
dependances.add(/*stuff*/);
}
}
很确定你想要有不同的东西。只需评论这个答案。
public ObjetTWS(String p_nom, String p_type, String p_jobAmont,
String p_jobAval) {
ObjetTWS obj = new ObjetTWS();
obj.nom = p_nom;
obj.jobAmont.add(p_jobAmont);
obj.jobAval.add(p_jobAval);
obj.type = p_type;
//dependances = new ArrayList<ObjetTWS>();
^ delete this line
dependances.add(obj);
}
public void ajouterJob(String p_nom, String p_jobAmont, String p_jobAval) {
dependances.get(/* the index you need*/);
}
答案 3 :(得分:0)
每次只在构造函数中创建一个ObjetTWS对象时,您的列表将包含,构造函数中的此语句为false:ObjetTWS obj = new ObjetTWS();
你的构造函数应该如下所示:
public ObjetTWS(String p_nom, String p_type,String p_jobAmont,String p_jobAval){
this.nom = p_nom;
this.jobAmont.add(p_jobAmont);
this.jobAval.add(p_jobAval);
this.type = p_type;
dependances.add(obj);
}
对于dependences
列表,您应该使用类变量在所有ObjetTWS
个实例之间共享,每次创建新的ObjetTWS
对象时,都要将其添加到列表中,这样的事情:
public static ArrayList<ObjetTWS> dependances;