2022-12-02 15:07:08 +01:00
|
|
|
import java.util.ArrayList;
|
|
|
|
import java.util.List;
|
|
|
|
|
2022-12-02 14:54:14 +01:00
|
|
|
public class GebietsListe {
|
2022-12-09 11:21:35 +01:00
|
|
|
private List<Gebiet> gebiete = new ArrayList<>();
|
2022-12-02 15:07:08 +01:00
|
|
|
|
2022-12-09 11:21:35 +01:00
|
|
|
public GebietsListe(List<Gebiet> gebiete) {
|
|
|
|
this.gebiete = gebiete;
|
2022-12-02 15:07:08 +01:00
|
|
|
}
|
|
|
|
|
2022-12-09 11:21:35 +01:00
|
|
|
public Gebiet getGebietMinDurchschnittEinkommen() {
|
|
|
|
return gebiete.stream()
|
|
|
|
.filter(g -> g.getDurchschnittsEinkommen() != -1)
|
|
|
|
.min((g1, g2) -> g1.getDurchschnittsEinkommen() - g2.getDurchschnittsEinkommen())
|
|
|
|
.get();
|
2022-12-02 15:07:08 +01:00
|
|
|
}
|
|
|
|
|
2022-12-09 11:21:35 +01:00
|
|
|
public Gebiet getGebietMaxEinwohner() {
|
|
|
|
return gebiete.stream()
|
|
|
|
.filter(g -> g.getDurchschnittsEinkommen() != -1)
|
|
|
|
.max((g1, g2) -> g1.getAnzahlEinwohner() - g2.getAnzahlEinwohner())
|
|
|
|
.get();
|
2022-12-02 15:07:08 +01:00
|
|
|
}
|
|
|
|
|
2022-12-09 11:21:35 +01:00
|
|
|
public int getAnzahlGesamt() {
|
|
|
|
return gebiete.size();
|
2022-12-02 15:07:08 +01:00
|
|
|
}
|
|
|
|
|
2022-12-09 11:21:35 +01:00
|
|
|
public int getAnzahlUnvollstaendig() {
|
|
|
|
return (int) gebiete.stream()
|
|
|
|
.filter(g -> g.getDurchschnittsEinkommen() == -1 || g.getGesamtEinkommen() == -1)
|
|
|
|
.count();
|
2022-12-02 15:07:08 +01:00
|
|
|
}
|
|
|
|
|
2022-12-09 11:21:35 +01:00
|
|
|
public List<Gebiet> getGebietNachNamen(String namensanfang) {
|
|
|
|
return gebiete.stream()
|
|
|
|
.filter(g -> g.getName().startsWith(namensanfang))
|
|
|
|
.toList();
|
2022-12-02 15:07:08 +01:00
|
|
|
}
|
2022-12-02 14:54:14 +01:00
|
|
|
}
|