まず、どのくらい大きいかによって、リストのpopotnikに新しいPopotnikを追加します。これは機能が正常に機能しています。それから私はリストpopotnikを通過し、それがどこにあるかに応じてpopotnikの値を設定したいが、私の値は呼び出されるたびに常に0になる。また、私はその時に1つのポポトニクを設定したいので、そこに休憩しています。そこに何らかの休憩を取っている間、私はどのように増分すべきですか?Java配列 - リストを通って特定の値を設定する方法
またif(popotnik.get(i) == null){}
が呼ばれますが、popotnik内部値(s)がnullであるされていない
private List<Popotnik> popotnik = new ArrayList<Popotnik>();
public void prostaMesta(List<Popotnik> popotnik, int sedez){
stanovanje.setPostle(sedez);
for(int i=0; i<stanovanje.getPostle(); i++){
popotnik.add(new Popotnik());
}
System.out.println(popotnik);
}
public void dodajPotnika(List<Popotnik> popotnik, Popotnik popotnik2){
for(int i=0; i<popotnik.size(); i++){
if(popotnik.get(i) == null){
setPopotnik(popotnik, i);
popotnik.set(i, popotnik2);
break;
}
}
System.out.println(getPopotnik());
}
public void setPopotnik(List<Popotnik> popotnik, int i){
this.popotnik = popotnik;
}
public List<Popotnik> getPopotnik(){
return popotnik;
}
メインクラス:リスト上のオブジェクトがnullではないため
List<Popotnik> alPopotnik = new ArrayList<Popotnik>();
if(x.equals("p")){ //inside of a loop when prostaMesta() is being called
potovanje.prostaMesta(alPopotnik, sedez);
}
`if(x.equals("d")){` //inside of a loop when dodajPotnika() is being called
System.out.println("Vnesi ime: ");
String ime = skener.next();
Popotnik popotnik = new Popotnik(ime);
potovanje.dodajPotnika(alPopotnik, popotnik);
}
'setPopotnik(popotnik、i);'の背後にあるコードは何ですか?私たちがそれを持っていなければ、あなたを助けることができないからです。そして、私は、入力値を返すのではなく変更することは、あなたと一緒に働いている人にとってはあいまいかもしれないことを指摘したいと思います。 – DamCx