跳至頁尾內容
.NET 幫助

C# 工作原理(面向開發者)

C# 是一種功能強大、類型安全的程式語言,提供開發人員豐富的功能來建立複雜的應用程式。 許多程式設計任務的核心都是運算符號 - 允許我們對變數和數值執行操作的建構塊。 本文深入探討各種類型的運算符號,例如算術運算符號,著重於它們的 優先順序、用法,以及一些增強語言功能的新特性介紹。 我們也將介紹 IronPDF 函式庫作為 .NET 應用程式的全面性 .NET PDF 工具

算術運算符號

算術運算元是任何程式語言中進行數值操作的基本要素,可在數值操作元上執行加法、減法、乘法和除法等操作。 本節涵蓋每個操作符的名稱、說明,並提供範例說明其在 C# 中的使用。

操作員名稱、說明、範例

例如,考慮基本的算術運算:

  • Addition (+): 增加兩個操作數。 範例:英特 x = 5 + 3;
  • 減法 (-):從左側操作數中減去右側操作數或值。 範例:英特 y = x - 2;
  • 乘法 ():兩個操作數相乘。 範例:英特 z = x y;
  • Division (/): 將左手的操作項/變數除以右手的操作項。 範例:int d = z / 2;

這些操作都很直接,操作符就是操作中涉及的值或變數,例如上述範例中的 xyz

數字否定

數值否定 (-) 是一個有趣的一元算術運算符號,它可以反轉數值操作項的符號。 例如,如果我們有 int x = 5;,那麼 -x 的結果就是 -5

二元運算符和運算符先後

二元運算符號,在 x op y 之類的表達式中表示為"op",需要兩個操作數才能執行其運算。 例如,在 x + y 中,"+"是二進制運算符號,x 和 y 是其操作符。 理解運算符號的優先順序對於準確評估包含多個運算符號的表達式至關重要。

透過範例了解運算子先例

請考慮以下範例:int result = 3 + 4 2;。 在此,乘法運算的優先順序高於加法運算,因此 4 2 會先進行評估,然後再將 3 加入結果中,得到 11

空凝聚運算符號

C# 中一個值得注意的新功能是 null coalescing 運算符 (??),它提供了檢查 null 值的簡潔方式。 如果左側操作數不為空,則此操作數會返回左側操作數; 否則,它會返回右側操作符,如以下範例所示。

範例

class Program
{
    static void Main(string[] args)
    {
        int? x = null; // nullable int, initialized to null
        int y = x ?? -1; // using null coalescing operator to provide a default value
        Console.WriteLine("The value of y is: " + y); // outputs: The value of y is: -1
    }
}
class Program
{
    static void Main(string[] args)
    {
        int? x = null; // nullable int, initialized to null
        int y = x ?? -1; // using null coalescing operator to provide a default value
        Console.WriteLine("The value of y is: " + y); // outputs: The value of y is: -1
    }
}
$vbLabelText   $csharpLabel

在這個範例中,y 將會是 -1,因為 x 為空。 null coalescing 運算符簡化了 null 值的檢查,尤其是在處理 nullable 類型時。

In C# (How It Works For Developers):圖 1 - Null 凝聚運算符名稱 描述 輸出範例

新功能:Null 匯聚的指定操作符。

C# 新增了一個稱為 null coalescing 赋值運算符的功能,符號為 ?=。 此運算符檢查其左側的變數是否為空。 如果是,運算符號會將右方的值指定給左方的變數形式。

示範 Null 匯聚的指定表達式

int? a = null; // nullable int, initialized to null
a ??= 10; // Assigns 10 to a since it is null
int? a = null; // nullable int, initialized to null
a ??= 10; // Assigns 10 to a since it is null
$vbLabelText   $csharpLabel

在這裡,a 在操作之後會變成 10,因為它最初是空的。 此操作符可減少顯式 null 檢查和指定的需要,從而簡化程式碼。

進階操作:Lambda 宣告與類型測試。

Lambda 聲明和類型測試是更先進的功能,可利用運算符來提供簡潔且強大的功能。

Lambda 宣言範例

C# 中的 Lambda 表達式使用 lambda 運算符 (=>) 來建立內嵌函數。 舉例來說

Func<int, int, int> add = (x, y) => x + y; // Lambda function to add two integers
int sum = add(5, 3); // Calls the lambda expression with 5 and 3, returns 8
Func<int, int, int> add = (x, y) => x + y; // Lambda function to add two integers
int sum = add(5, 3); // Calls the lambda expression with 5 and 3, returns 8
$vbLabelText   $csharpLabel

這個程式碼片段定義了一個簡單的函式,使用 lambda 表達式將兩個整數值相加。

使用 'is' 運算符進行類型測試。

類型測試使用 is 運算符執行,讓您可以在執行時檢查類型。舉例來說

object obj = "Hello World"; // obj is a string
if (obj is string s) {
    Console.WriteLine(s); // Outputs: Hello World
}
object obj = "Hello World"; // obj is a string
if (obj is string s) {
    Console.WriteLine(s); // Outputs: Hello World
}
$vbLabelText   $csharpLabel

這會檢查 obj 是否為 string 類型,若為 true 則將其指定給 s

In C# (How It Works For Developers):圖 2 - 是操作員輸出

Working with PDFs in C#:IronPDF 簡介。

In C# (How It Works For Developers):圖 3 - IronPdf

在 C# 中處理文件產生與處理時,管理 PDF 檔案是常見的需求。 IronPDF 是一個全面的函式庫,可讓開發人員 使用 IronPDF 從 HTML 創建 PDF,並直接在 .NET 應用程式中讀取和編輯 PDF 文件,而不需要任何相依性。 本節探討如何將 IronPdf 整合到 C# 專案中,尤其著重於與我們之前討論的運算符和變數相關的操作。

安裝 IronPDF。

在深入瞭解 IronPDF 的功能之前,第一步是將該函式庫整合到您的專案中。 IronPdf 可通過 NuGet(.NET 常用的套件管理器)輕鬆添加。 通過使用 NuGet Package Manager,您只需花最少的精力即可將 IronPDF 包含到您的專案中。

要安裝 IronPDF,您可以使用套件管理員控制台指令:

Install-Package IronPdf

另外,您也可以使用 Visual Studio 中的 NuGet Package Manager UI,搜尋"IronPdf"並直接安裝到您的專案中。

範例:使用算術運算生成 PDF 文件

一旦 IronPDF 被添加到您的專案中,您就可以開始利用其功能來產生和處理 PDF 文件。 以下是一個簡單的範例,說明如何建立包含算術運算結果的 PDF 文件,這與我們討論的運算符號有關。

using IronPdf;

public class PdfGenerationExample
{
    public static void CreatePdfWithArithmeticOperations()
    {
        // Create a new PDF document
        var pdf = new HtmlToPdf();
        // HTML content with embedded C# arithmetic
        var htmlContent = @"
            <html>
                <body>
                    <h1>Arithmetic Operations Result</h1>
                    <p>Result of 3 + 4: " + (3 + 4).ToString() + @"</p>
                    <p>Result of 10 * 2: " + (10 * 2).ToString() + @"</p>
                    <p>Result of 50 / 5: " + (50 / 5).ToString() + @"</p>
                </body>
            </html>";

        // Convert HTML to PDF
        var document = pdf.RenderHtmlAsPdf(htmlContent);
        // Save the PDF to a file
        document.SaveAs("ArithmeticOperations.pdf");
    }
}
using IronPdf;

public class PdfGenerationExample
{
    public static void CreatePdfWithArithmeticOperations()
    {
        // Create a new PDF document
        var pdf = new HtmlToPdf();
        // HTML content with embedded C# arithmetic
        var htmlContent = @"
            <html>
                <body>
                    <h1>Arithmetic Operations Result</h1>
                    <p>Result of 3 + 4: " + (3 + 4).ToString() + @"</p>
                    <p>Result of 10 * 2: " + (10 * 2).ToString() + @"</p>
                    <p>Result of 50 / 5: " + (50 / 5).ToString() + @"</p>
                </body>
            </html>";

        // Convert HTML to PDF
        var document = pdf.RenderHtmlAsPdf(htmlContent);
        // Save the PDF to a file
        document.SaveAs("ArithmeticOperations.pdf");
    }
}
$vbLabelText   $csharpLabel

在這個範例中,我們建立了一個簡單的 HTML 模版,其中包含各種算術運算的結果,類似於我們之前所討論的內容。 IronPdf 將這些 HTML 內容渲染成 PDF 文件,展示 C# 程式碼和 HTML 如何無縫結合來產生動態文件。

In C# (How It Works For Developers):圖 4 - 算術運算輸出

結論

C# 中的運算符號是執行各種操作的必要工具,從基本的算術到複雜的類型測試和 lambda 表達式。 瞭解這些運算符號、它們的優先順序,以及如何有效地使用它們,對任何想要掌握 C# 的開發人員而言都是至關重要的。 IronPdf 為開發人員提供 免費試用,以探索其特色與功能。 如果您決定將它整合到您的生產環境中,授權費從 $799 開始。 隨著 null coalescing 赋值運算符等新功能的推出,C# 持續發展,提供了更高效、更簡潔的代碼編寫方式。

常見問題解答

如何在C#中執行算術運算?

在 C# 中,加法、減法、乘法和除法等算術運算使用+-*/等運算子執行。這些運算符允許在程式碼中操作數值。

C# 中運算子優先順序的重要性是什麼?

C# 中的運算子優先權決定了表達式中運算的執行順序。例如,乘法和除法的優先權高於加法和減法,這會影響類似3 + 4 * 2這樣的表達式的計算結果,最終結果為11

如何在C#中處理空值?

C# 提供了空值合併運算子??和空值合併賦值運算子??=來處理空值。這些運算符透過在處理可空類型時提供預設值來簡化檢查和賦值操作。

C# 中的 lambda 表達式是什麼?

C# 中的 Lambda 表達式是一種使用=>語法編寫匿名函數的簡潔方法。它們允許內聯定義函數,可以捕獲變數和返回值,從而增強語言的表達能力。

如何在C#中測試特定類型?

C# 中的「is」運算子用於類型測試。它檢查物件是否屬於特定類型,這在進行安全類型轉換時非常有用:如果檢查結果為真,則將物件賦值給該類型的變數。

如何在C#應用程式中建立PDF?

您可以使用 IronPDF 庫在 C# 應用程式中建立 PDF 檔案。它允許開發人員透過轉換 HTML 或修改現有 PDF 文件,直接在 .NET 應用程式中產生、讀取和編輯 PDF 文件。

如何將 PDF 庫整合到我的 C# 專案中?

IronPDF 可以透過 NuGet 套件管理器整合到 C# 專案中。您可以透過在套件管理器控制台中執行命令「Install-Package IronPdf」來安裝它,也可以在 Visual Studio 的 NuGet 套件管理器 UI 中搜尋「IronPdf」來安裝它。

C# 中算術運算子有哪些使用範例?

在 C# 中使用算術運算子的範例包括:使用int x = 5 + 3;使用int y = x - 2;使用int z = x * y;以及使用int d = z / 2;進行除法運算。

C#可以執行哪些高階操作?

C# 中的進階操作包括使用帶有=>運算子的 lambda 表達式建立內聯函數,以及使用 'is' 運算子執行執行時間類型檢查以確保安全類型測試。

Jacob Mellor,Team Iron 首席技術官
首席技術長

Jacob Mellor 是 Iron Software 的首席技術官,也是一位富有遠見的工程師,率先開發了 C# PDF 技術。作為 Iron Software 核心程式碼庫的最初開發者,他自公司成立之初便參與塑造了其產品架構,並與執行長 Cameron Rimington 一起將其發展成為一家擁有 50 多名員工、服務於 NASA、特斯拉和全球政府機構的公司。

Jacob 於 1998 年至 2001 年在曼徹斯特大學獲得土木工程一級榮譽學士學位。 1999 年,他在倫敦創辦了自己的第一家軟體公司;2005 年,他創建了自己的第一個 .NET 元件。此後,他專注於解決微軟生態系統中的複雜問題。

他的旗艦產品 IronPDF 和 IronSuite .NET 庫在全球 NuGet 上的安裝量已超過 3000 萬次,其基礎程式碼持續為全球開發者工具提供支援。憑藉 25 年的商業經驗和 41 年的程式設計專長,Jacob 始終致力於推動企業級 C#、Java 和 Python PDF 技術的創新,同時指導下一代技術領導者。