1.條件運算符 ?:
例如:a == null ? null : a.x;
這是最常見的問號?運算符。
支持:所有版本C#
2.可空類型定義的簡寫 int?
C#中null值不能賦值給值類型,如果值類型需要設置可為空則須用:System.Nullable<T> t定義,簡寫成T? t
例如:System.Nullable<int> total 可簡寫為: int? total
支持: >= .NET Framework 4.0
3. null 合並運算符 ??
如果此運算符的左操作數不為 null,則此運算符將返回左操作數;否則返回右操作數。
例如:
int x?;
int y = x ?? -1;
支持: >= .NET Framework 4.0
4.null條件運算符 ?.
用於在執行成員訪問 (?.
) 或索引 (?[
) 操作之前,測試是否存在 NULL。
if(a != null) a.x(); 等效於 a?.x();
支持 >= C# 6.0