G
.getHilfe()
Gast
Ich habe die Aufgabe, eine vorher zu befüllende Arrayliste auszugeben.
Die Objekt-Klasse mit der ich das Array befülle lautet
Ich habe eine Testklasse erstellt, und dass ausgeben von spezifischen Ländern funktioniert so, wie ich es mir vorgestellt habe.
Jetzt wird in LandVerwaltung eine Methode liesDaten erstellt,
(welche ich ebenfalls erfolgreich getestet habe ) um ein Array in einer while-schleife mit Objekten des typs Land aus einer textdatei zu füllen.
Am Ende erhalte ich keine Ausgabe in der konsole, obwohl ich eigentlich dachte, dass ich über die for-schleife und den get() befehl an alle einträge der Liste herankomme. Bin ratlos. Dies ist die letzte Aufgabe die mir zur Fertigstellung meiner Hausarbeit fehlt, also wäre ich für Hilfe sehr dankbar.
Die Objekt-Klasse mit der ich das Array befülle lautet
Java:
public class Land {
private String name;
private String hauptstadt;
private int einwohnerzahl;
private int flaecheInQKM;
public Land(String name, String hauptstadt, int einwohnerzahl,
int flaecheInQKM) {
this.name = name;
this.hauptstadt = hauptstadt;
this.einwohnerzahl = einwohnerzahl;
this.flaecheInQKM = flaecheInQKM;
public void ausgabe() {
System.out.println(name + "," + hauptstadt + ","
+ einwohnerzahl + "," + flaecheInQKM);
Ich habe eine Testklasse erstellt, und dass ausgeben von spezifischen Ländern funktioniert so, wie ich es mir vorgestellt habe.
Jetzt wird in LandVerwaltung eine Methode liesDaten erstellt,
Java:
ArrayList<Land> laender = new ArrayList<Land>();
public void liesDaten(ArrayList<Land> liste, String dateiname) {
try {
BufferedReader in = new BufferedReader(new FileReader(dateiname));
String zeile = null;
while ((zeile = in.readLine()) != null) {
String[] temp = zeile.split(";");
int w = Integer.parseInt(temp[2]);
int e = Integer.parseInt(temp[3]);
//Hier bin ich etwas unsicher, ob die benennung "x" später eine Rolle spielt
Land x = new Land(temp[0], temp[1], w, e);
laender.add(x);
//x.ausgabe();
//Ich erhalte alle Länder, sobald ich die Methode ausgabe auf diese Art einbaue, dies entspricht aber nicht der Aufgabenstellung.
}
} catch (IOException e) {
e.printStackTrace();
}
}
Java:
public class Hausarbeit {
public static void main (String []args){
Hausarbeit meineHausarbeit = new Hausarbeit ();
meineHausarbeit.aufgabe2 ();
}
public void aufgabe2 (){
ArrayList<Land> laender = new ArrayList<Land>();
String dateiname = "(korrekter dateipfad)" ;
LandVerwaltung meineLandVerwaltung = new LandVerwaltung ();
meineLandVerwaltung.liesDaten(laender, dateiname);
meineLandVerwaltung.selectionSort(laender);
//und hier kommt das Problem! Ich würde gerne die nun sortierte Liste wieder in der Konsole ausgeben, ich habe es auch schon mit for-each probiert. Irgendwie erscheint aber nichts in der Konsole, benutze ich die liste.get(int) methode falsch?
for(int g = 0; g < laender.size(); g++){
laender.get(g).ausgabe();}
}
}
Am Ende erhalte ich keine Ausgabe in der konsole, obwohl ich eigentlich dachte, dass ich über die for-schleife und den get() befehl an alle einträge der Liste herankomme. Bin ratlos. Dies ist die letzte Aufgabe die mir zur Fertigstellung meiner Hausarbeit fehlt, also wäre ich für Hilfe sehr dankbar.