在生產環境中測試,無水印。
在任何需要的地方都能運行。
獲得 30 天的全功能產品。
在幾分鐘內上手運行。
試用產品期間完全訪問我們的支援工程團隊
空合併運算子??
評估右側操作數,並在其為非空引用時返回其結果; 否則,將返回其左運算元的值。 如果左側運算元評估為不可為 null 的值類型,則空條件運算符(??)不會評估其右側運算元。 空合併賦值運算符 ??=
會將右操作數的值賦給左操作數,只有當左操作數評估為可為空類型的值時才會這樣做。 如果左側的運算元評估為非空值,則空合併賦值運算符(??=)不會評估其右側的運算元。 空合併運算符類似於三元運算符。
確實,在 C# 中,空合併運算子 (??) 是一個二元運算子。 作用於兩個運算元的運算符稱為二元運算符。 使用空值合併運算符時,需要兩個操作數,並且運算符會對每個操作數進行評估以確定結果。 現在我們將在下面看到 C# 中空合併和空條件運算符的用法。
創建一個新的 C# 專案。
確保已安裝適當的版本。
使用空合併運算子??。
根據需求檢查值或物件參考類型。
C# 中的空值由空合併運算子 (??) 預設處理,這是一種用於處理可空類型或可能導致空值的表達式時,使用合併概念來管理此類值的方法。
以下是空合併運算符的語法:
result = expression1 ?? expression2;
result = expression1 ?? expression2;
result = If(expression1, expression2)
expression1: 此表達式可能產生空值。
expression2:如果 expression1 為空,這將是要使用的預設值或替代運算式。
結果:保存合併運算結果的變數。
空合併運算子提供了一種精簡的方式,來為可空類型分配預設值,這是其在簡化程式碼和有效處理空值數據時的主要目標。
通過明確說明如果返回空值將提供默認值,可以提高代碼的可讀性。
在使用空合併運算符之前,確保被比較的表達式類型相符或相容是至關重要的。
雖然有用,但過度使用該運算符可能會使代碼更難理解。 當它提升程式碼清晰度時,請謹慎使用。
在處理可空類型或需要預設值的情況時,C# 中的空合併運算符(??)是一個有效的工具,用於管理空值,並可能有助於編寫更精簡和易於理解的程式碼。
空合併運算子 ?? 具有以下類型相關的特性:
如果表達式 1 和 2 的類型相同,那麼空合併運算子的結果類型與這些運算元相同,如以下代碼所示。
int? Value = null;
int result = Value ?? 10;
int? Value = null;
int result = Value ?? 10;
Dim Value? As Integer = Nothing
Dim result As Integer = If(Value, 10)
如果表達式 1 和表達式 2 具有不同的類型,但其中一個可以隱式轉換為另一個,則結果類型為可以將兩個表達式隱式轉換到的類型。
double? value= null;
int result = (int)(value ?? 5.5);
double? value= null;
int result = (int)(value ?? 5.5);
Imports System
Dim value? As Double= Nothing
Dim result As Integer = CInt(Math.Truncate(If(value, 5.5)))
如果表達式 1 和 2 的類型無法隱式轉換,結果類型將根據 C# 的類型提升規則來選擇。
int? value= null;
long result = value ?? 100L;
int? value= null;
long result = value ?? 100L;
Dim value? As Integer= Nothing
Dim result As Long = If(value, 100L)
因此,涉及的操作數類型和C#類型轉換規則決定了持有空合運算子(??)結果的變數或表達式的類型。 為了確保在使用空合併運算符時正確處理類型和值,考慮相容性和可能的類型轉換至關重要。
若要安裝IronPDF庫,請在套件管理器中輸入以下相同的程式碼:
Install-Package IronPdf
或者,您可以使用 NuGet 套件管理器來搜尋套件 "IronPDF"。 您可以從與IronPDF相關的所有NuGet套件列表中選擇並下載必要的套件。
名為 IronPDF 的 C# 庫用來創建和處理 PDF 文件。 該程式庫提供了一些用於處理 PDF 的功能,例如格式化、文字處理和圖片管理。 「Null合併」既不是IronPDF獨有的方法,也不是功能。 相反,這是一個語言特性,而不是特定於庫的操作。
然而,如果您在 C# 代碼中使用 IronPDF 或其他任何函式庫,您可以使用 C# 語言提供的空合併運算子 (??)。
要處理空值情況或提供默認值,例如在使用IronPDF對象時,對於可為空的值類型或可能返回空值的屬性,可以使用空合併運算符。
以下範例顯示了如何在 IronPDF 中使用空合併運算子:
using IronPdf;
using IronPdf.Pages;
namespace ConsoleApp1
{
internal class Program
{
static void Main(string [] args)
{
int? x = null;
var outputstr = $@"square of <b>{x}</b> is <b>{ Math.Sqrt(x??30)}</b>";
var pdfcreate = ChromePdfRenderer.StaticRenderHtmlAsPdf(outputstr);
pdfcreate.SaveAs("demo.pdf");
Console.ReadKey();
}
}
}
using IronPdf;
using IronPdf.Pages;
namespace ConsoleApp1
{
internal class Program
{
static void Main(string [] args)
{
int? x = null;
var outputstr = $@"square of <b>{x}</b> is <b>{ Math.Sqrt(x??30)}</b>";
var pdfcreate = ChromePdfRenderer.StaticRenderHtmlAsPdf(outputstr);
pdfcreate.SaveAs("demo.pdf");
Console.ReadKey();
}
}
}
Imports IronPdf
Imports IronPdf.Pages
Namespace ConsoleApp1
Friend Class Program
Shared Sub Main(ByVal args() As String)
Dim x? As Integer = Nothing
Dim outputstr = $"square of <b>{x}</b> is <b>{Math.Sqrt(If(x, 30))}</b>"
Dim pdfcreate = ChromePdfRenderer.StaticRenderHtmlAsPdf(outputstr)
pdfcreate.SaveAs("demo.pdf")
Console.ReadKey()
End Sub
End Class
End Namespace
請記住,IronPDF(或任何程式庫)不提供管理空值條件運算子的特殊功能或方法; 相反,使用空合併運算子是基於一般 C# 語言特性和概念來處理空條件運算子的。 若要了解有關 IronPDF 的功能和能力的更多資訊,請參閱IronPDF 示範。
輸出:
總而言之,C# 的空合併運算符(??)是一個有用的特性,使得在表達式和賦值中處理空值更簡單、更高效。 此運算符透過為開發人員提供一種明確的方法來處理值可能為 null 的情況,從而簡化了程式碼。 這使開發人員能夠輕鬆指定預設值或執行替代邏輯。 其適應性使代碼更加精簡和高效,簡化空測試並提高可讀性。
IronPDF 提供永久授權、升級選項、一年的軟體維護和三十天的退款保證,所有這些都包含在$749 Lite 套餐中。 用戶在有浮水印的試用期內,可在真實應用環境中評估產品三十天。 點擊提供的IronPDF 授權以了解更多有關 IronPDF 的成本、授權和試用版的信息。 要了解有關 Iron Software 產品的更多資訊,請查看Iron Software 網站。