add og remove i ArrayList
1: I methoden 'persIBilen' add'er jeg en streng til min ArrayList 'liste', men det lægger sig oven på det sidst add'ede.. Hvorfor ligger den sig ikke "ved siden af"?2: I methoden 'alleStigerUd' forsøger jeg at slette alt indholdet i min 'liste', men den sletter kun hveranden.. Jeg køre det igennem en for loop, og går udfra at det er her jeg laver en fejl, hvad gør jeg galt?
Her er koden:
import java.util.*;
public class Bil
{
private int kilometer;
private double pris=3.3;
public ArrayList<String> liste;
public void drive(int antalKilometer) // opdatere antal kørte kilometer
{
kilometer = kilometer + antalKilometer;
}
public double pris() // giver den vuderede salgspris
{
return pris;
}
public String toString() // giver en besrivelse af bilen
{
return "Bilen har kørt: "+kilometer+" Km og koster: "+pris;
}
public void persIBilen(String personer) // hvormange der sidder i bilen
{
liste = new ArrayList<String>();
liste.add(personer);
//har tilføjet nogle i forvejen så jeg slipper for at taste nogen ind x antal gange
liste.add("Frk. Olsen");
liste.add("Leif");
liste.add("Sjanten");
liste.add("Fjotte");
liste.add("Jens Fup");
}
public void hvemSidderIBilen()// fortæller hvem der sidder i bilen
{
System.out.println("Der er "+liste.size()+" person(er) i bilen"); //printer størrelsen på ArrayListen
System.out.println("Det er: "+liste.toString());
}
public void alleStigerUd() // sletter dem fra ArrayListen
{
for(int n=0; n<liste.size(); n++)
{
liste.remove(n);
}
System.out.println("Der er nu "+liste.size()+" person(er) i bilen");
}
}
