Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
手冊C# · 範例UO
T? 對於值類型不允許有任何值,例如 int?。引用類型上的可為空註解可以幫助編譯器找到對 null 的潛在引用;它們不會添加自動執行時間檢查。 ?. 執行條件訪問,?? 指定替換,??= 在null 下分配。
T?
int?
null
?.
??
??=
請將此範例另存為 Example.cs,並與本頁其他範例分開執行。
Example.cs
Example.cs:
// PROJECT-EXAMPLE string? name = null; System.Console.WriteLine(name ?? "Unknown");
結果:
Unknown
string? name = null; string display = name ?? "unknown"; int length = name?.Length ?? 0; UO.Print($"{display}: {length}");
int? amount = null; amount ??= 1; if (amount is int value) { UO.Print(value.ToString()); }
! 運算子會抑制空解析警告,但不會阻止異常。對於可為 null 的值類型,請檢查 HasValue、使用通配符或 GetValueOrDefault。遺失的物件和數字零是不同的狀態。
!
HasValue
GetValueOrDefault
官方文件:null,可空類型和檢查 - Microsoft 學習。
There was an error while loading. Please reload this page.