42 #13
@@ -7,11 +7,16 @@ public class EinkommenInfo {
 | 
				
			|||||||
        GebietsDatei datei = new GebietsDatei("Einkommen.csv");
 | 
					        GebietsDatei datei = new GebietsDatei("Einkommen.csv");
 | 
				
			||||||
        List<Gebiet> gebiet = datei.getGebiete();
 | 
					        List<Gebiet> gebiet = datei.getGebiete();
 | 
				
			||||||
        GebietsListe gebietsListe = new GebietsListe(gebiet);
 | 
					        GebietsListe gebietsListe = new GebietsListe(gebiet);
 | 
				
			||||||
        System.out.println(gebiet.size() + " Gebiete wurden eingelesen.");
 | 
					
 | 
				
			||||||
        System.out.println(gebietsListe.getAnzahlUnvollstaendig() + " davon haben unvollständige Angaben.");
 | 
					        System.out.println(gebietsListe.getAnzahlGesamt() + " Gebiete wurden eingelesen.");
 | 
				
			||||||
        System.out.println();
 | 
					        System.out.println(gebietsListe.getAnzahlUnvollstaendig() + " davon haben unvollständige Angaben.\n");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        System.out.println("Gebiet mit dem geringsten Durchschnittseinkommen:");
 | 
					        System.out.println("Gebiet mit dem geringsten Durchschnittseinkommen:");
 | 
				
			||||||
        System.out.println(gebietsListe.getGebietMinDurchschnittEinkommen());
 | 
					        System.out.println(gebietsListe.getGebietMinDurchschnittEinkommen());
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        System.out.println("Gebiet mit der größten Einwohernzahl:");
 | 
				
			||||||
 | 
					        System.out.println(gebietsListe.getGebietMaxEinwohner());
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        Scanner sc = new Scanner(System.in);
 | 
					        Scanner sc = new Scanner(System.in);
 | 
				
			||||||
        while (true) {
 | 
					        while (true) {
 | 
				
			||||||
            System.out.print("Name des Gebietes: ");
 | 
					            System.out.print("Name des Gebietes: ");
 | 
				
			||||||
@@ -23,7 +28,8 @@ public class EinkommenInfo {
 | 
				
			|||||||
            for (Gebiet area : foundAreas) {
 | 
					            for (Gebiet area : foundAreas) {
 | 
				
			||||||
                System.out.println(area);
 | 
					                System.out.println(area);
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
            System.out.println(foundAreas.size() + " Gebiete wurden gefunden.");
 | 
					            System.out.println(foundAreas.size() + " Gebiete wurden gefunden.\n");
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					        sc.close();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
@@ -46,11 +46,15 @@ public class Gebiet implements GebietInterface{
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    @Override
 | 
					    @Override
 | 
				
			||||||
    public int getAnzahlEinwohner() {
 | 
					    public int getAnzahlEinwohner() {
 | 
				
			||||||
        return (int)(gesamtEinkommen / durchschnittsEinkommen);
 | 
					        return (int) (gesamtEinkommen * 1000 / durchschnittsEinkommen);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @Override
 | 
					    @Override
 | 
				
			||||||
    public String toString() {
 | 
					    public String toString() {
 | 
				
			||||||
        return getName() + "\n" + getAnzahlEinwohner() + " Einwohner\n" + getDurchschnittsEinkommen() + " Euro / Einwohner\n";
 | 
					        if (getDurchschnittsEinkommen() <= 1 || getGesamtEinkommen() <= 1) {
 | 
				
			||||||
 | 
					            return getName() + "\n" + "Einwohnerzahl unbekannt\n" + "Durchschnittseinkommen unbekannt\n";
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        return getName() + "\n" + getAnzahlEinwohner() + " Einwohner\n" + getDurchschnittsEinkommen()
 | 
				
			||||||
 | 
					                + " Euro / Einwohner\n";
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -15,7 +15,9 @@ public class GebietsDatei {
 | 
				
			|||||||
        try {
 | 
					        try {
 | 
				
			||||||
            Files.readAllLines(Paths.get(dateiName)).forEach(line -> {
 | 
					            Files.readAllLines(Paths.get(dateiName)).forEach(line -> {
 | 
				
			||||||
                String[] parts = line.split(";");
 | 
					                String[] parts = line.split(";");
 | 
				
			||||||
                gebiete.add(new Gebiet(Integer.parseInt(parts[0]), Integer.parseInt(parts[1]), parts[2], (parts[3].equals("-")) ? 0 : Long.parseLong(parts[3]), (parts[4].equals("-")) ? 0 : Integer.parseInt(parts[4])));
 | 
					                gebiete.add(new Gebiet(Integer.parseInt(parts[0]), Integer.parseInt(parts[1]), parts[2],
 | 
				
			||||||
 | 
					                        (parts[3].equals("-")) ? -1 : Long.parseLong(parts[3]),
 | 
				
			||||||
 | 
					                        (parts[4].equals("-")) ? -1 : Integer.parseInt(parts[4])));
 | 
				
			||||||
            });
 | 
					            });
 | 
				
			||||||
        } catch (Exception e) {
 | 
					        } catch (Exception e) {
 | 
				
			||||||
            e.printStackTrace();
 | 
					            e.printStackTrace();
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -2,33 +2,39 @@ import java.util.ArrayList;
 | 
				
			|||||||
import java.util.List;
 | 
					import java.util.List;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
public class GebietsListe {
 | 
					public class GebietsListe {
 | 
				
			||||||
    private List<GebietMock> gebietListe = new ArrayList<>();
 | 
					    private List<Gebiet> gebiete = new ArrayList<>();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public GebietsListe(List<Gebiet> gebiete) {
 | 
					    public GebietsListe(List<Gebiet> gebiete) {
 | 
				
			||||||
        this.gebietListe = gebietListe;
 | 
					        this.gebiete = gebiete;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public Gebiet getGebietMinDurchschnittEinkommen() {
 | 
					    public Gebiet getGebietMinDurchschnittEinkommen() {
 | 
				
			||||||
 | 
					        return gebiete.stream()
 | 
				
			||||||
        return null;
 | 
					                .filter(g -> g.getDurchschnittsEinkommen() != -1)
 | 
				
			||||||
 | 
					                .min((g1, g2) -> g1.getDurchschnittsEinkommen() - g2.getDurchschnittsEinkommen())
 | 
				
			||||||
 | 
					                .get();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public Gebiet getGebietMaxEinwohner() {
 | 
					    public Gebiet getGebietMaxEinwohner() {
 | 
				
			||||||
 | 
					        return gebiete.stream()
 | 
				
			||||||
        return null;
 | 
					                .filter(g -> g.getDurchschnittsEinkommen() != -1)
 | 
				
			||||||
 | 
					                .max((g1, g2) -> g1.getAnzahlEinwohner() - g2.getAnzahlEinwohner())
 | 
				
			||||||
 | 
					                .get();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public int getAnzahlGesamt() {
 | 
					    public int getAnzahlGesamt() {
 | 
				
			||||||
        return 0;
 | 
					        return gebiete.size();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public int getAnzahlUnvollstaendig() {
 | 
					    public int getAnzahlUnvollstaendig() {
 | 
				
			||||||
 | 
					        return (int) gebiete.stream()
 | 
				
			||||||
        return 0;
 | 
					                .filter(g -> g.getDurchschnittsEinkommen() == -1 || g.getGesamtEinkommen() == -1)
 | 
				
			||||||
 | 
					                .count();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public List<Gebiet> getGebietNachNamen(String namensanfang) {
 | 
					    public List<Gebiet> getGebietNachNamen(String namensanfang) {
 | 
				
			||||||
 | 
					        return gebiete.stream()
 | 
				
			||||||
        return null;
 | 
					                .filter(g -> g.getName().startsWith(namensanfang))
 | 
				
			||||||
 | 
					                .toList();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user