S
s.g.
Gast
Hallo,
Wie kann ich von der Klasse3 auf die public Liste der Klasse2 zurückgreifen und die Inhalte dieser Liste vergleichen.
Die Liste ist ja public, somit von außen erreichbar. Alle Klassen sind in dem gleichen Package. Da die Liste auch mit Werten gefüllt ist, warum kriege ich ein NullPointerException? Rufe ich die Liste falsch auf bzw. an einer falschen Stelle?
Wo ist mein Fehler?
meine Ausgangsbasis:
Wie kann ich von der Klasse3 auf die public Liste der Klasse2 zurückgreifen und die Inhalte dieser Liste vergleichen.
Die Liste ist ja public, somit von außen erreichbar. Alle Klassen sind in dem gleichen Package. Da die Liste auch mit Werten gefüllt ist, warum kriege ich ein NullPointerException? Rufe ich die Liste falsch auf bzw. an einer falschen Stelle?
Wo ist mein Fehler?
meine Ausgangsbasis:
Java:
// die Methode2 aus Klasse2 soll angestossen werden, was auch passiert
public Klasse1
{
Klasse2 klasse2 = new Klasse2();
for(...)
{
methode1()
{
klasse2.methode2(parameter1, parameter2);
}
}
}
//In dieser Klasse wird die list mit String-Werten gefüllt.
//über System.out.println(list) kann ich die liste auch mit den Werten ausgeben
public Klasse2
{
public List<String> liste = new ArrayList<String>();
public String variable1;
public void methode2(String param1, String param2)
{
for(...)
{
variable1 = ...
list.add(variable1);
}
}
}
// auf die Liste aus Klasse2 zurückgreifen und die Listen-Inhalte vergleichen.
//Funktioniert leider nicht. Bei der for-schleife bekomme ich ein NullPointerException.
public Klasse3
{
Klasse1 klasse1 = new Klasse1();
Klasse2 klasse2 = new Klasse2();
String name;
klasse1.methode1(); // hier wird die methode1 angestossen, damit die methode2 aus der Klasse2 die entsprechenden Werte erhält
methode3()
{
for(...)
{
name = irgendetwas.getName();
for(String test : klasse2.list) // ich möchte über alle Elementer der Liste, die in methode2 der Klasse2 gefüllt wurde iterieren. Aber ich bekomme Als Fehlermeldung "NullPointerException". Warum?
{
if(name.equals(test)
System.out.println("Yuhuu es funktioniert");
}
}
}
}