跳過到頁腳內容
.NET幫助

C# 真偽(開發者的工作原理)

歡迎來到 C# 程式設計的世界! 如果您是初學者,瞭解基本概念可能是您未來成功的關鍵。 在包括 C# 在內的大多數程式語言中,有一個這樣的基本概念,就是布林值和變數的概念。 在本指南中,我們將深入探討 C# 中的 boolean 值,並學習如何合理地利用這些值。

C# 中的布林基礎知識;

什麼是布林?

布林是一種只有兩個值的資料類型 - truefalse 。 這種二進制的性質可被視為開關。 在 C# 中,表示這些值的關鍵字分別是 truefalse

例如,考慮您房間的電燈開關。 它可以是 ON(真)或 OFF(假)。 同樣的原則也適用於此。

在 C# 中宣告 Bool 變數;

在 C# 中,您可以宣告一個 bool 變數,如下例所示。

bool isLightOn = true;
bool isLightOn = true;
Dim isLightOn As Boolean = True
$vbLabelText   $csharpLabel

在此,isLightOn 是一個 bool 變數,其值為 true

布林運算符號的作用

在 C# 中,truefalse 不僅是值。 它們是在布林表達式和布林邏輯中扮演重要角色的運算符號。 這些決定條件的結果,可在各種結構中使用,尤其是 if 語句。

真假運算符號深入淺出。

在 C# 中,與許多程式語言一樣,truefalse 並非只是基本值。 它們構成了布林邏輯的骨幹,與運算符搭配使用時,可以建立複雜且功能強大的條件語句。 以下是對這些運算符號及其在 C# 中意義的更全面介紹。

含 True 和 False 的邏輯運算符號

C# 提供了一系列邏輯運算符號,這些運算符號與 truefalse 一起工作,以評估和操作 boolean 表達式

AND (&&):如果兩個表達式都為真,則返回 true。

bool result = true && false;  // result is false
bool result = true && false;  // result is false
Dim result As Boolean = True AndAlso False ' result is false
$vbLabelText   $csharpLabel

OR (||):如果至少有一個表達式為真,就會回傳 true。

bool result = true || false;  // result is true
bool result = true || false;  // result is true
Dim result As Boolean = True OrElse False ' result is true
$vbLabelText   $csharpLabel

NOT (!):反轉表達式的值。

bool result = !true;  // result is false
bool result = !true;  // result is false
Dim result As Boolean = Not True ' result is false
$vbLabelText   $csharpLabel

超載真假運算符號

在 C# 中,您可以透過重載使用者定義類型中的 truefalse 運算符來定義自訂行為。 這表示您可以決定自訂物件如何評估為 truefalse

例如,考慮一個表示燈泡的類別:

public class LightBulb
{
    public int Brightness { get; set; }

    public static bool operator true(LightBulb bulb)
    {
        return bulb.Brightness > 50;
    }

    public static bool operator false(LightBulb bulb)
    {
        return bulb.Brightness <= 50;
    }
}
public class LightBulb
{
    public int Brightness { get; set; }

    public static bool operator true(LightBulb bulb)
    {
        return bulb.Brightness > 50;
    }

    public static bool operator false(LightBulb bulb)
    {
        return bulb.Brightness <= 50;
    }
}
Public Class LightBulb
	Public Property Brightness() As Integer

	Public Shared Operator IsTrue(ByVal bulb As LightBulb) As Boolean
		Return bulb.Brightness > 50
	End Operator

	Public Shared Operator IsFalse(ByVal bulb As LightBulb) As Boolean
		Return bulb.Brightness <= 50
	End Operator
End Class
$vbLabelText   $csharpLabel

使用上述程式碼,LightBulb 物件的 Brightness 值大於 50 時,其評估值為 true,否則,其評估值為 false

條件運算符號

C# 也提供返回 bool 值的條件運算符號。

Equality (==):檢查兩個值是否相等。

bool result = (5 == 5);  // result is true
bool result = (5 == 5);  // result is true
Dim result As Boolean = (5 = 5) ' result is true
$vbLabelText   $csharpLabel

Inequality (!=):檢查兩個值是否不相等。

bool result = (5 != 5);  // result is false
bool result = (5 != 5);  // result is false
Dim result As Boolean = (5 <> 5) ' result is false
$vbLabelText   $csharpLabel

大於 (>)、小於 (<)、大於或等於 (>=) 以及小於或等於 (<=):用於比較數值 (int) 或其他可比較的類型。

bool isGreater = (10 > 5);  // isGreater is true
bool isGreater = (10 > 5);  // isGreater is true
Dim isGreater As Boolean = (10 > 5) ' isGreater is true
$vbLabelText   $csharpLabel

瞭解布林表達式

什麼是布林表達式?

布林表達式是評估為 truefalse 的語句。 舉例來說

int a = 5;
int b = 10;
bool result = a > b;  // This will evaluate to false
int a = 5;
int b = 10;
bool result = a > b;  // This will evaluate to false
Dim a As Integer = 5
Dim b As Integer = 10
Dim result As Boolean = a > b ' This will evaluate to false
$vbLabelText   $csharpLabel

這裡,a > b 是一個布林表達式。 該表達式評估為 false 因為 5 不大於 10。

使用 if 語句的布林表達式

C# 中布林表達式的主要用途在 if 語句中。 if 語句內的程式碼僅在布林表達式為 true 時執行。

if (isLightOn)
{
    Console.WriteLine("The light is on!");
}
if (isLightOn)
{
    Console.WriteLine("The light is on!");
}
If isLightOn Then
	Console.WriteLine("The light is on!")
End If
$vbLabelText   $csharpLabel

在上述片段中,if 語句內的程式碼將會執行,因為 isLightOntrue

使用 Nullable Bool 超越 True 和 False。

介紹 Nullable 值類型

有時候,您可能會遇到變數可能沒有值的情況。 例如,如果您從外部來源取得資料,布林欄位可能是 truefalse 或 unknown(即無值)。

C# 為此類情況引進了 nullable 值類型。 對於布林,這表示為 bool?,代表 nullable bool 運算符號。

宣告和使用可歸空的布林值

nullable bool 可以取三個值:true, false, 或 null. 以下是如何宣告一個 nullable 布林值:

bool? isDataAvailable = null;
bool? isDataAvailable = null;
Dim isDataAvailable? As Boolean = Nothing
$vbLabelText   $csharpLabel

現在,isDataAvailable 沒有我們之前討論過的兩個值中的任何一個。 取而代之的是 null 表示沒有數值。

檢查可為空的布林值

您可能想知道如何檢查 nullable bool 的值。 您可以這樣做

if (isDataAvailable == true)
{
    Console.WriteLine("Data is available.");
}
else if (isDataAvailable == false)
{
    Console.WriteLine("Data is not available.");
}
else
{
    Console.WriteLine("Data availability is unknown.");
}
if (isDataAvailable == true)
{
    Console.WriteLine("Data is available.");
}
else if (isDataAvailable == false)
{
    Console.WriteLine("Data is not available.");
}
else
{
    Console.WriteLine("Data availability is unknown.");
}
If isDataAvailable = True Then
	Console.WriteLine("Data is available.")
ElseIf isDataAvailable = False Then
	Console.WriteLine("Data is not available.")
Else
	Console.WriteLine("Data availability is unknown.")
End If
$vbLabelText   $csharpLabel

請注意我們如何比較 nullable booltruefalse 兩種運算符號。 如果兩者都不符合,表示該值為 null

Iron Software

Iron Software suite 旨在為 C# 開發人員提供各種任務的增強功能。

IronPDF。

C# True False (How It Works For Developers) 圖 1 - IronPDF- Convert HTML String to PDF

探索 IronPDF 功能 - IronPDF 是一款强大的工具,用于创建、编辑和提取 PDF 文档中的内容。 想一想您已經產生報告,並需要驗證是否成功產生的情境。 使用布林檢查,您可以確保 PDF 的完整性。 如果 PDF 符合特定條件,則操作可能會返回 truefalse 否則,這顯示了布林邏輯與 PDF 操作交織在一起的性質。

IronPDF 的主要優勢在於將 HTML 轉換為 PDF 文件,確保保留原始的版面設計和樣式。 它特別適用於從網頁內容(如報告、發票和文件)產生 PDF。 它可以使用 HTML 檔案、URL 和 HTML 字串來建立 PDF。

using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        var renderer = new ChromePdfRenderer();

        // 1. Convert HTML String to PDF
        var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
        var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
        pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");

        // 2. Convert HTML File to PDF
        var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
        var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
        pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");

        // 3. Convert URL to PDF
        var url = "http://ironpdf.com"; // Specify the URL
        var pdfFromUrl = renderer.RenderUrlAsPdf(url);
        pdfFromUrl.SaveAs("URLToPDF.pdf");
    }
}
using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        var renderer = new ChromePdfRenderer();

        // 1. Convert HTML String to PDF
        var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
        var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
        pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");

        // 2. Convert HTML File to PDF
        var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
        var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
        pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");

        // 3. Convert URL to PDF
        var url = "http://ironpdf.com"; // Specify the URL
        var pdfFromUrl = renderer.RenderUrlAsPdf(url);
        pdfFromUrl.SaveAs("URLToPDF.pdf");
    }
}
Imports IronPdf

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		Dim renderer = New ChromePdfRenderer()

		' 1. Convert HTML String to PDF
		Dim htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>"
		Dim pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent)
		pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf")

		' 2. Convert HTML File to PDF
		Dim htmlFilePath = "path_to_your_html_file.html" ' Specify the path to your HTML file
		Dim pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath)
		pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf")

		' 3. Convert URL to PDF
		Dim url = "http://ironpdf.com" ' Specify the URL
		Dim pdfFromUrl = renderer.RenderUrlAsPdf(url)
		pdfFromUrl.SaveAs("URLToPDF.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

IronXL。

C# True False (How It Works For Developers) 圖 2 - IronXL

Discover IronXL for Excel Management - IronXL 提供處理 Excel 表單的功能,無論是讀取、寫入或處理資料。 在 Excel 中處理大量資料集時,布林值往往變得不可或缺。 例如,驗證資料是否符合特定標準或檢查資料匯入作業是否成功,通常會產生 truefalse 結果。 因此,IronXL 和布林值在資料驗證和操作中經常是相輔相成的。

IronOCR。

C# True False (How It Works For Developers) 圖 3 - IronOCR

進一步瞭解 IronOCR - IronOCR 是一種光學字元識別工具,可讓開發人員從影像和文件中擷取文字。 在 OCR 的情況下,布林值在驗證文字擷取成功與否的過程中扮演舉足輕重的角色。 例如,在處理影像後,軟體可能會指出 (truefalse) 擷取是否成功,或掃描的內容是否符合預期的值。

IronBarcode。

C# True False (How It Works For Developers) 圖 4 - IronBarcode

探索 IronBarcode 功能 - 最后,但肯定不是最不重要的,IronBarcode 提供了生成和扫描条形码的功能。 與 Iron Suite 的其他工具一樣,布林邏輯是不可或缺的。 掃描條碼或 QR 代碼後,布林檢查可迅速告知您條碼是否被識別,或產生的條碼是否符合特定標準。

結論

C# True False (How It Works For Developers) 圖 5 - 授權

透過 C# 中 truefalse 的旅程,您可以深入了解這門語言的深度和多樣性。 當與 Iron Software 套件等強大的工具結合時,開發人員可以充分發揮其應用程式的潛力。 透過瞭解布林值及其如何與先進的軟體解決方案互動,您將能夠更好地製作高效、有效且無錯誤的程式。 對於那些考慮將 Iron Software 工具整合到其專案中的人而言,值得一提的是,每個產品授權的起始價格為 $799 。

如果您很想親身體驗這些工具的功能,每一個產品都提供了豐厚的 免費試用優惠。 這可讓您在無風險的情況下體驗這些工具的功能和優點,確保它們符合您專案的需求,然後再做出承諾。

此外,對於那些尋求價值最大化的人,您可以只需購買兩項產品的價格,就能購買整個 Iron Software 產品套件,大幅節省成本,並為您的開發需求提供全面的工具包。

常見問題解答

什麼是布林值,它們在 C# 中如何運作?

C# 中的布林值是一種基本資料類型,只能容納兩個可能的值:truefalse 。它們通常透過條件語句來控制程式設計的執行流程。

如何使用 C# 將 HTML 轉換為 PDF?

您可以使用 IronPDF 的 RenderHtmlAsPdf 方法在 C# 中將 HTML 轉換為 PDF。這可讓您有效率地將 HTML 字串或檔案渲染為 PDF 文件。

什麼是 C# 中的 nullable booleans,應該在何時使用?

C# 中的 Nullable 布尔值表示為 bool?,可以取值為 truefalsenull。它們在布林狀態不確定或需要反映未定義狀況的情況下特別有用。

布林邏輯如何增強 C# 應用程式中的文件處理?

在 C# 應用程式中,可以使用布林邏輯來驗證文件處理作業的完整性。例如,IronPDF 使用布林檢查來確認成功的轉換或資料處理,確保流程符合指定的條件。

C# 中具有布林值的邏輯運算符號有什麼意義?

C# 中的 AND (&&)、OR (||) 和 NOT (!) 等邏輯運算符號用於組成複雜的布林表達式,對於程式中的決策和控制流程至關重要。

C# 中如何使用布林條件運算符號?

在 C# 中,等式 (==) 和不等式 (!=) 等條件運算符號與布林值一起使用,用來比較變數和評估條件,以決定程式內的執行流程。

您能解釋 C# 中 true 和 false 運算符號的重載嗎?

在 C# 中,您可以在使用者定義的類型中重載 true 和 false 運算符,以自訂這些類型的實體如何評估布林值。這包括實作定義特定條件的方法,在這些條件下,物件會被視為真或假。

C# 中 if 語句中的布林表達式如何運作?

if 語句中的布林表達式會評估為 truefalse 並決定 if 語句中的程式碼區塊是否執行。if 語句僅在條件評估為 true 時執行所夾住的程式碼。

C# 開發人員如何利用布林值進行資料管理?

在資料管理中,布林值是執行檢查和驗證的關鍵。例如,IronXL.Excel 在執行 Excel 檔案作業時會使用布林邏輯來驗證資料完整性,確保資料在處理前符合特定標準。

Jacob Mellor, Team Iron 首席技术官
首席技术官

Jacob Mellor 是 Iron Software 的首席技術官,作為 C# PDF 技術的先鋒工程師。作為 Iron Software 核心代碼的原作者,他自開始以來塑造了公司產品架構,與 CEO Cameron Rimington 一起將其轉變為一家擁有超過 50 名員工的公司,為 NASA、特斯拉 和 全世界政府機構服務。

Jacob 持有曼徹斯特大學土木工程一級榮譽学士工程學位(BEng) (1998-2001)。他於 1999 年在倫敦開設了他的第一家軟件公司,並於 2005 年製作了他的首個 .NET 組件,專注於解決 Microsoft 生態系統內的複雜問題。

他的旗艦產品 IronPDF & Iron Suite .NET 庫在全球 NuGet 被安裝超過 3000 萬次,其基礎代碼繼續為世界各地的開發工具提供動力。擁有 25 年的商業經驗和 41 年的編碼專業知識,Jacob 仍專注於推動企業級 C#、Java 及 Python PDF 技術的創新,同時指導新一代技術領袖。