SwordMaster Geschrieben 8. November 2003 Geschrieben 8. November 2003 Hab ein String array public String StationsBez[]=new String[10000]; und in einer anderen methode hab ich solche abfragen if (StationsBez[integervariable].equals((String)"")) Station="unbekannt"; und jedes mal wenn ich dem index der "inteveriable" keinen wert zugewiesen habe, krieg ich eine NullPointerException wie kann ich dann prüfen ob ich den index schon einen wert zugewiesen hab???? kann mir jemand helfen? MFG SwordMaster Zitieren
themaster Geschrieben 8. November 2003 Geschrieben 8. November 2003 Teste if (StationsBez[integervariable]==null){ //Der Position integervariable ist noch nicht belegt worden Station="unbekannt"; } Hintergrund: Das Array wird mit null in allen Positionen des Array angelegt. Wenn du auf ein Feldinhalt der null enthält zugreifst und darauf equals() aufrufst, dann wird eine NullPointerException geworfen, da an dieser Stelle ja ein String und nicht null erwartet wird. Jeder Methodenaufruf auf eine Referenz die null ist, wird mit einer NullPointerException "bestraft". Grüße Dirk Zitieren
zirri Geschrieben 11. November 2003 Geschrieben 11. November 2003 Original geschrieben von SwordMaster if (StationsBez[integervariable].equals((String)"")) nur nebenbei : warum hier den TypeCast ? gruss / zirri Zitieren
stereotype Geschrieben 11. November 2003 Geschrieben 11. November 2003 Hi, mit: "".equals(wasAuchImmer[x]) ist man auf der sicheren Seite. Falls der String nicht initialisert ist fängt man sich keine NullPointerException .... Zitieren
themaster Geschrieben 12. November 2003 Geschrieben 12. November 2003 Original geschrieben von stereotype Hi, mit: "".equals(wasAuchImmer[x]) ist man auf der sicheren Seite. Falls der String nicht initialisert ist fängt man sich keine NullPointerException .... Jain. Allgemein stimmt das erstmal und ist auch ein guter Vorschlag, aber das spezifische Problem, der unbekannten Stations (sie Rootposting) kannst du mit "".equals(stationsArray) nicht lösen, sondern nur mit Test auf null. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.