<null>
ist nicht nil
. nil
druckt (null)
beim Drucken. Was Sie haben, ist ein NSNull
. NSNull
IST ein Objekt, es reagiert nur zu wenig. Es ist als Platzhalter für Sie verfügbar.
Um auf NSNull
zu testen, können Sie if ([images isEqual:[NSNull null]])
Weitere Informationen finden Sie in den Dokumenten mehr Infos zu NSNull
Wenn Sie die Speicheradresse eines Objective-C-Objekts oder eines anderen Zeigers ausgeben möchten, sollten Sie das Flag %p
not %@
verwenden. Das Flag %@
erwartet eine Zeichenfolge.
Wenn das Argument jedoch keine Zeichenfolge ist, ruft NSLog
automatisch -description
für das übergebene Objekt auf. Und wenn die Methode ein Objekt NSNull
zurückgibt, gibt das -description
für dieses Objekt die Zeichenfolge <null>
Ausgabe: 0x00000000
Ausgabe: etwas wie 0x12345678
Achtung:
%Vor% Ausgabe: eine Speicheradresse, die immer gleich ist, aber sich von 0x00000000
Der richtige Weg zu testen, ob ihre Objekte im Array sind, ist wie folgt.
%Vor%Tags und Links objective-c