Guten Tag,
ich schreibe gerade ein kleines Krankenhausprogramm.
Ich erhalte eine NullPointerException doch ich komme einfach nicht auf den Fehler.
Der Fehler liegt wohl in der Methode listeZusammen().
Ich bin ein bisschen überfragt, da ich nichts mit NULL deklariert habe. Also müsste etwas bei Methodenaufruf schieflaufen. Ich weiß bloß nicht was und bitte um eure Hilfe.
Hier der zugehörige Case in der Menü Klasse.
Anmerkung: Wenn ich den Case direkt in der Main Aufrufe funktioniert das Programm.
ich schreibe gerade ein kleines Krankenhausprogramm.
Ich erhalte eine NullPointerException doch ich komme einfach nicht auf den Fehler.
Der Fehler liegt wohl in der Methode listeZusammen().
Ich bin ein bisschen überfragt, da ich nichts mit NULL deklariert habe. Also müsste etwas bei Methodenaufruf schieflaufen. Ich weiß bloß nicht was und bitte um eure Hilfe.
Java:
public class Qualitätsmanagement implements Observer {
Scanner scan = new Scanner(System.in);
ArrayList <String> Aufnahmeliste = new ArrayList<String>(); //Liste um PatientID & Aufnahmedatum zu speichern
ArrayList <String> Entlassungsliste = new ArrayList<String>(); //Liste um PatientID und Entlassungsliste zu speichern
ArrayList[] listen = new ArrayList[] {Aufnahmeliste, Entlassungsliste}; //zusammengeführte Liste
String id1;
String id2;
String date1; //Aufnahme
String date2; // Entlassung
/**
* Methode für die Aufnahme des Patienten.
* Fragt ID & Aufnahmedatum ab.
*/
public void listeErstellen() {
System.out.println("PatientID?");
String scan1 = scan.nextLine();
id1 = scan1;
System.out.println("Aufnahmedatum?");
String scan2 = scan.nextLine();
date2 = scan2;
Aufnahmeliste.add(new String("P" + id1 + "; " + date2 ));
}
/*
* Methode fragt per Benutzereingabe die PatientenId und dasEntlassungsdatum ab
*/
public void listeVollständig() {
System.out.println("PatientenID?");
String scan3 = scan.nextLine();
id2 = scan3;
System.out.println("Entlassungsdatum?");
String scan4 = scan.nextLine();
date2 = scan4;
Entlassungsliste.add(new String(id2 + "; " + date2));
}
public String getScan3() {
return id2;
}
public String getScan1() {
return id2;
}
public String getScan4() {
return date2;
}
/*
* Methode geht beide Listen durch und prüft auf gleiche
* PID. Die PID das Aufnahmedatum & Entlassungsdatum aus
*/
public void listenZusammen() {
if(id1.equals(id2)) //Wenn Patientennr bei beiden Eingaben gleich ... //HIER WIRD DER FEHLER ANGEZEIGT
{
for(int i = 0; i < Aufnahmeliste.size(); i++)
for (int j = 0; j < Entlassungsliste.size(); j++) {
{
System.out.println(Aufnahmeliste.get(i) + "; " + getScan4() );
}
}
}
}
@Override
public void update(Observable o, Object arg) { //ignorieren
// TODO Auto-generated method stub
}
}
Hier der zugehörige Case in der Menü Klasse.
Java:
case 10:
Qualitätsmanagement quali2 = new Qualitätsmanagement();
quali2.listeVollständig(); //fügt beide ArrayListen zusammen
Logger neuerLogger = Logger.getInstance();
System.out.println(neuerLogger.log("Patient ID - Aufnahmedatum - Entlassungsdatum"));
quali2.listenZusammen(); // gibt Liste aus
break;
Anmerkung: Wenn ich den Case direkt in der Main Aufrufe funktioniert das Programm.
Zuletzt bearbeitet: