溫馨提示×

c# nullable 怎樣處理空值

c#
小樊
144
2024-11-26 12:12:20
欄目: 編程語言

在 C# 中,null 是一個特殊的值,表示變量沒有引用任何對象。這在處理可能為空的值時非常有用,例如數據庫查詢結果或用戶輸入。為了處理空值,C# 提供了 null 關鍵字和 System.Nullable<T> 類型。

  1. 使用 null 關鍵字:

當變量可能為空時,可以使用 null 關鍵字來表示。例如:

string? myString = null;
int? myInt = null;

這里,myStringmyInt 都是可空的類型,它們可以分別存儲 null 值。要檢查一個可空值是否為空,可以使用 ?? 操作符(空合并操作符):

string result = myString ?? "Default String";
int? result2 = myInt ?? 0;
  1. 使用 System.Nullable<T> 類型:

System.Nullable<T> 是一個泛型類,用于表示可空的值。它的語法如下:

public struct Nullable<T> where T : struct, IConvertible

Nullable<T> 類型有一個名為 HasValue 的布爾屬性,用于檢查值是否為空。還有一個名為 Value 的屬性,用于獲取或設置非空值。例如:

int? myInt = 5;
if (myInt.HasValue)
{
    Console.WriteLine(myInt.Value); // 輸出 5
}
else
{
    Console.WriteLine("myInt is null");
}

要檢查一個可空值是否為空,可以使用 ?? 操作符(空合并操作符):

int result = myInt ?? 0;
  1. 使用 null-conditional 運算符(C# 6 及更高版本):

從 C# 6 開始,可以使用 ?. 運算符來簡化可空類型的空值檢查。例如:

string result = myString?.Substring(0, 1);

如果 myString 為空,result 將被賦值為 null,而不是引發異常。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女