溫馨提示×

在C#中如何正確處理Optional值

c#
小樊
81
2024-09-08 04:18:18
欄目: 編程語言

在C#中,可以使用Nullable<T>或者T?來表示一個可選值

public void MyFunction(int? optionalValue = null)
{
    if (optionalValue.HasValue)
    {
        // 有值的情況下進行操作
        int value = optionalValue.Value;
        Console.WriteLine("Value: " + value);
    }
    else
    {
        // 無值的情況下進行操作
        Console.WriteLine("No value provided.");
    }
}

在這個例子中,我們定義了一個名為MyFunction的方法,該方法接受一個可選的整數(shù)參數(shù)。如果提供了值,則輸出該值;否則,輸出"No value provided."。

要調(diào)用此方法,可以按以下方式操作:

MyFunction(); // 不提供值
MyFunction(10); // 提供值

注意,對于引用類型(如類和數(shù)組),可以直接將其設(shè)置為null,而不需要使用Nullable<T>T?。例如:

public void MyFunction(string optionalValue = null)
{
    if (optionalValue != null)
    {
        // 有值的情況下進行操作
        Console.WriteLine("Value: " + optionalValue);
    }
    else
    {
        // 無值的情況下進行操作
        Console.WriteLine("No value provided.");
    }
}

在這個例子中,我們定義了一個名為MyFunction的方法,該方法接受一個可選的字符串參數(shù)。如果提供了值,則輸出該值;否則,輸出"No value provided."。

要調(diào)用此方法,可以按以下方式操作:

MyFunction(); // 不提供值
MyFunction("Hello, world!"); // 提供值

0