[英]Dart null vs Null
據了解,檢查 object 是null
還是Null
應該是 Z35900D987289A83AF101Z173 上的同一件事。
就像是:
print(bar == null);
print(bar is Null);
應該打印相同的值。 但是,在使用 firebase 的 flutter 應用程序中,我得到了以下行為:
print(snapshot.data['appearance']['details'].runtimeType); // Null
print(snapshot.data['appearance']['details'].runtimeType == null); // false
print(snapshot.data['appearance']['details'].runtimeType == Null); // true
print(snapshot.data['appearance']['details'].runtimeType is Null); // false
字段值為null
上的 null。 為什么會這樣?
null
是一個值。 Null
是一個類型。
.runtimeType
返回一個Type
。 它不能返回null
值(這意味着 object 沒有類型)。 null.runtimeType
返回Null
; 也就是說, null
object 有一個名為Null
的類型。
至於為什么.runtimeType is Null
is false
,請看:Dart中的'is'和'=='有什么區別?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.