diff --git a/.idea/uiDesigner.xml b/.idea/uiDesigner.xml
new file mode 100644
index 0000000..e96534f
--- /dev/null
+++ b/.idea/uiDesigner.xml
@@ -0,0 +1,124 @@
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+ -
+
+
+
+
+
+ -
+
+
+
+
+
+ -
+
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+
\ No newline at end of file
diff --git a/src/Gebiet.java b/src/Gebiet.java
index 89862cf..1400021 100644
--- a/src/Gebiet.java
+++ b/src/Gebiet.java
@@ -6,8 +6,57 @@
* abgeleitete Eigenschaft und wird dementsprechend in der Methode 'getAnzahlEinwohner'
* berechnet.
*
- * @author Gubitz, Wöstemeyer, Pfannenstiel, Maier, Vigier :D
+ * @author Vigier
*/
-public class Gebiet {
- //gepushter kommentar
-}
+public class Gebiet implements GebietInterface {
+ private int jahr;
+ private int schlüssel;
+ private String name;
+ private long gesamtEinkommen;
+ private int durchschnittsEinkommen;
+
+ public Gebiet(int jahr, int schlüssel, String name, long gesamtEinkommen, int durchschnittsEinkommen) {
+ this.jahr = jahr;
+ this.schlüssel = schlüssel;
+ this.name = name;
+ this.gesamtEinkommen = gesamtEinkommen;
+ this.durchschnittsEinkommen = durchschnittsEinkommen;
+ }
+
+ @Override
+ public int getjahr() {
+ return jahr;
+ }
+
+ @Override
+ public int getSchüssel() {
+ return schlüssel;
+ }
+
+ @Override
+ public String getName() {
+ return name;
+ }
+
+ @Override
+ public long getGesamtEinkommen() {
+ if(gesamtEinkommen == 0){
+ return -1;
+
+ }
+ return gesamtEinkommen;
+ }
+
+ @Override
+ public int getDurchschnittsEinkommen() {
+ if(getDurchschnittsEinkommen() == 0){
+ return -1;
+ }
+ return durchschnittsEinkommen;
+ }
+
+ @Override
+ public int getAnzahlEinwohner() {
+ return (int) (gesamtEinkommen / durchschnittsEinkommen);
+ }
+}
\ No newline at end of file
diff --git a/src/GebietInterface.java b/src/GebietInterface.java
new file mode 100644
index 0000000..eb60ac3
--- /dev/null
+++ b/src/GebietInterface.java
@@ -0,0 +1,8 @@
+public interface GebietInterface {
+ int getjahr();
+ int getSchüssel();
+ String getName();
+ long getGesamtEinkommen();
+ int getDurchschnittsEinkommen();
+ int getAnzahlEinwohner();
+}
diff --git a/src/GebietListe.java b/src/GebietListe.java
index 1c4175d..002e444 100644
--- a/src/GebietListe.java
+++ b/src/GebietListe.java
@@ -1,3 +1,5 @@
+import java.util.List;
+
/**
* Die Klasse 'GebietsListe' enthält als Attribut eine Liste von Gebiet-Objekten. Darauf
* aufbauend wird eine Reihe von Algorithmen bereitgestellt, die die Liste der Gebiete
@@ -13,5 +15,12 @@
*
* @author Gubitz, Wöstemeyer, Pfannenstiel, Maier, Vigier :D
*/
-public class GebietListe {
+public class GebietListe implements ListenInterface
+{
+ private List gebiete;
+
+ public GebietListe(List gebiete)
+ {
+ this.gebiete = gebiete;
+ }
}
diff --git a/src/GebietMock.java b/src/GebietMock.java
new file mode 100644
index 0000000..ea4f460
--- /dev/null
+++ b/src/GebietMock.java
@@ -0,0 +1,32 @@
+public class GebietMock implements GebietInterface{
+
+ @Override
+ public int getjahr() {
+ return 0;
+ }
+
+ @Override
+ public int getSchüssel() {
+ return 0;
+ }
+
+ @Override
+ public String getName() {
+ return null;
+ }
+
+ @Override
+ public long getGesamtEinkommen() {
+ return 0;
+ }
+
+ @Override
+ public int getDurchschnittsEinkommen() {
+ return 0;
+ }
+
+ @Override
+ public int getAnzahlEinwohner() {
+ return 0;
+ }
+}
diff --git a/src/GebietsDatei.java b/src/GebietsDatei.java
index b2bc080..7e11930 100644
--- a/src/GebietsDatei.java
+++ b/src/GebietsDatei.java
@@ -1,10 +1,42 @@
+import java.io.IOException;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.Paths;
+import java.util.ArrayList;
+import java.util.List;
+
/**
* Die Klasse 'Gebietsdatei' hat die Aufgabe, die Datei 'Einkommen.csv' einzulesen, zu
* interpretieren, als Gebiet-Objekte zu speichern und diese in Form einer Liste zur Verfügung
* zu stellen.
*
- * @author Gubitz, Wöstemeyer, Pfannenstiel, Maier, M. Vigier :D
+ * @author Gubitz, Wöstemeyer, Pfannenstiel, Maier, Vigier
*/
-public class GebietsDatei {
- //wg //er kam, er sah und siegtedfg
+public class GebietsDatei implements GebietsQuelle{
+ private ArrayList gebiete = new ArrayList<>();
+
+ public void GebietsDatei (String dateiname){
+ Path pfad = Paths.get(dateiname);
+
+ try {
+ List zeilen = Files.readAllLines(pfad);
+
+ for(String zeile : zeilen) {
+ String[] teile = zeile.split(";");
+ int jahr = Integer.parseInt(teile[0]);
+ int schlüssel = Integer.parseInt(teile[1]);
+ String region = teile[2];
+ int einkommenProHaushalt = Integer.parseInt(teile[3]);
+ int einkommenjeEinwohner = Integer.parseInt(teile[4]);
+ gebiete.add(new Gebiet(jahr, schlüssel, region, einkommenProHaushalt, einkommenjeEinwohner));
+ }
+
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+
+ public List getGebiete() {
+ return gebiete;
+ }
}
diff --git a/src/GebietsQuelle.java b/src/GebietsQuelle.java
new file mode 100644
index 0000000..095b54a
--- /dev/null
+++ b/src/GebietsQuelle.java
@@ -0,0 +1,6 @@
+import java.util.ArrayList;
+import java.util.List;
+
+public interface GebietsQuelle {
+ List getGebiete();
+}
diff --git a/src/ListenInterface.java b/src/ListenInterface.java
new file mode 100644
index 0000000..cf39895
--- /dev/null
+++ b/src/ListenInterface.java
@@ -0,0 +1,3 @@
+public interface ListenInterface
+{
+}
diff --git a/src/MockGebietsDatei.java b/src/MockGebietsDatei.java
new file mode 100644
index 0000000..a1326e2
--- /dev/null
+++ b/src/MockGebietsDatei.java
@@ -0,0 +1,13 @@
+import java.util.*;
+
+public class MockGebietsDatei implements GebietsQuelle {
+ private ArrayList gebiete = new ArrayList<>();
+
+ public void GebietsDatei (String dateiname){
+
+ }
+
+ public List getGebiete() {
+ return gebiete;
+ }
+}