8. November 200322 j 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
8. November 200322 j 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
11. November 200322 j Original geschrieben von SwordMaster if (StationsBez[integervariable].equals((String)"")) nur nebenbei : warum hier den TypeCast ? gruss / zirri
11. November 200322 j Hi, mit: "".equals(wasAuchImmer[x]) ist man auf der sicheren Seite. Falls der String nicht initialisert ist fängt man sich keine NullPointerException ....
12. November 200322 j 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.
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.