Guten Morgen,
ich habe ein Programm geschrieben, was einer Verwaltung gleich kommt.
Ich kann Personen hinzufügen, welche in einer ArrayList gespeichert werden.
Die Personen können verschiedene Informationen haben (Name, Vorname, Alter etc.)
Funktioniert alles wunderbar, jedoch bin ich auf Neuland gestoßen. Wenn ich einer Person keinen Vornamen gebe, sprich, dieser String null ist, schimpft mich die Konsole mit "Exception in thread "main" java.lang.NullPointerException".
War mir bis dahin unbekannt.
Habe jetzt schon mit mehreren if != null Konstruktionen versucht, den Fehler zu umgehen, komme jedoch nicht zum gewünschten Ziel.
Kann mir da jemand helfen?
ich habe ein Programm geschrieben, was einer Verwaltung gleich kommt.
Ich kann Personen hinzufügen, welche in einer ArrayList gespeichert werden.
Die Personen können verschiedene Informationen haben (Name, Vorname, Alter etc.)
Funktioniert alles wunderbar, jedoch bin ich auf Neuland gestoßen. Wenn ich einer Person keinen Vornamen gebe, sprich, dieser String null ist, schimpft mich die Konsole mit "Exception in thread "main" java.lang.NullPointerException".
War mir bis dahin unbekannt.
Habe jetzt schon mit mehreren if != null Konstruktionen versucht, den Fehler zu umgehen, komme jedoch nicht zum gewünschten Ziel.
Kann mir da jemand helfen?
Java:
package dev;
public class VerwaltungMain
{
public static void main(String[] args)
{
Verwaltung vwt = new Verwaltung();
Person p1 = new Person();
p1.setVorname("Klaus");
p1.setName("Hampel");
p1.setAlter(10);
p1.setGroeße(180);
p1.setSchuhgroeße(44);
p1.setLieblingsessen("Schntizel");
vwt.addPerson(p1);
Person p2 = new Person();
p2.setVorname("Peter");
p2.setName("Bla");
p2.setAlter(20);
p2.setGroeße(190);
p2.setSchuhgroeße(46);
p2.setLieblingsessen("Pizza");
vwt.addPerson(p2);
Person p3 = new Person();
p3.setVorname("Hans");
p3.setName("Meier");
p3.setAlter(30);
p3.setGroeße(160);
p3.setSchuhgroeße(40);
p3.setLieblingsessen("Steak");
vwt.addPerson(p3);
Person p4 = new Person();
p4.setVorname("Franz");
p4.setName("Ferdinand");
p4.setAlter(40);
p4.setGroeße(200);
p4.setSchuhgroeße(50);
p4.setLieblingsessen("Döner");
vwt.addPerson(p4);
Person p5 = new Person();
p5.setVorname("Klaus");
p5.setName("Hampel");
p5.setAlter(10);
p5.setGroeße(180);
p5.setSchuhgroeße(44);
p5.setLieblingsessen("Schntizel");
vwt.addPerson(p5);
Person pBoese = new Person();
// pBoese.setVorname("Klaus");
pBoese.setName("Hampel");
pBoese.setAlter(10);
pBoese.setGroeße(180);
pBoese.setSchuhgroeße(44);
pBoese.setLieblingsessen("Schntizel");
vwt.addPerson(pBoese);
vwt.printNameAndAge();
// vwt.printAllPersonInfos();
System.out.println(vwt.isPersonWithFirstNameInList("Klaus"));
System.out.println(vwt.isPersonWithFirstNameInList("Niklas"));
System.out.println(vwt.countOfPersonsWithFirstName("Klaus"));
System.out.println(vwt.countOfPersonsWithFirstName("Niklas"));
}
}
Java:
package dev;
public class Person
{
private int schuhgroeße;
private int alter;
private double groeße;
private String name, vorname, lieblingsessen;
public Person() {
}
public void getInfos()
{
System.out.println("Vorname: " + vorname);
System.out.println("Nachname: " + name);
System.out.println("Alter: " + alter);
System.out.println("Größe: " + groeße);
System.out.println("Schuhgröße: " + schuhgroeße);
System.out.println("Lieblingsessen: " + lieblingsessen);
}
public String getString()
{
return "Vorname: " + vorname + "\nNachname: " + name + "\nAlter: "
+ alter + "\nGröße: " + groeße + "\nSchuhgröße: " + schuhgroeße
+ "\nLieblingsessen: " + lieblingsessen;
}
public int getSchuhgroeße()
{
return schuhgroeße;
}
public void setSchuhgroeße(int schuhgroeße)
{
this.schuhgroeße = schuhgroeße;
}
public int getAlter()
{
return alter;
}
public void setAlter(int alter)
{
this.alter = alter;
}
public double getGroeße()
{
return groeße;
}
public void setGroeße(double groeße)
{
this.groeße = groeße;
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public String getVorname()
{
return vorname;
}
public void setVorname(String vorname)
{
this.vorname = vorname;
}
public String getLieblingsessen()
{
return lieblingsessen;
}
public void setLieblingsessen(String lieblingsessen)
{
this.lieblingsessen = lieblingsessen;
}
}
Java:
package dev;
import java.util.ArrayList;
import java.util.List;
public class Verwaltung
{
private List<Person> personen = new ArrayList<Person>();
public void addPerson(Person person2BeAdded) // Person bezieht sich auf
// Klasse Person!!!
{
personen.add(person2BeAdded);
}
public void printNameAndAge()
{
for (Person currentPerson : personen)
{
System.out.println("Vorname: " + currentPerson.getVorname());
System.out.println("Nachname: " + currentPerson.getName());
System.out.println("Alter: " + currentPerson.getAlter());
System.out.println();
}
}
public void printAllPersonInfos()
{
for (Person currentPerson : personen)
{
System.out.println("Vorname: " + currentPerson.getVorname());
System.out.println("Nachname: " + currentPerson.getName());
System.out.println("Alter: " + currentPerson.getAlter());
System.out.println("Körpergröße: " + currentPerson.getGroeße());
System.out.println("Schugröße: " + currentPerson.getSchuhgroeße());
System.out.println("Lieblingsessen: "
+ currentPerson.getLieblingsessen());
System.out.println();
}
}
public boolean isPersonWithFirstNameInList(String firstName2BeLookingFor)
{
boolean result = false;
for (Person currentPerson : personen)
{
if (currentPerson.getVorname().equals(firstName2BeLookingFor)) // TODO null kann keine methode aufrufen -- getVorname darf nicht leer sein
{
result = true;
}
}
return result;
}
public int countOfPersonsWithFirstName(String firstName2BeCounted)
{
if (firstName2BeCounted == null)
{
return 0;
}else{
int counter = 0;
for (Person currentPerson : personen)
{
if (currentPerson.getVorname().equals(firstName2BeCounted))
{
counter++;
}
}
return counter;
}
}
}