Ich habe versucht, ein ähnliches Problem zu suchen, vergebens. Wenn ich den Operator von "! =" Zu "==" ändere, wird "{}" ausgedruckt. Wenn ich die Variable, die ich gerade testet (current.myData), einfach ausdrucke, wird die Ganzzahl, auf die sie verweist, wie erwartet ausgegeben. Jedes Mal, wenn ich "current.myData! = Null" teste, wird jedoch eine Nullzeiger-Ausnahme ausgelöst und beendet. Jede Hilfe wird sehr geschätzt!Java Generic Object Null Zeiger Check Throwing Null Zeiger Ausnahme
public class LinkedQueue<E> implements QueueADT<E> {
@Override
public String toString() {
...
String exitVal = null;
final StringBuffer sb = new StringBuffer();
if (myFront.myData == null) {
exitVal = "{ }";
} else {
Node<E> current = myFront.myNext;
sb.append('{');
sb.append(myFront.myData);
while (current.myData != null) {
sb.append(", ");
sb.append(String.valueOf(current.myData));
current = current.myNext;
}
sb.append('}');
exitVal = sb.toString();
}
return exitVal;
}
ändern Bedeutet es nicht einfach, dass '' current' ist null'? – MikeCAT