.NET 幫助

C# 類型(開發人員的工作原理)

發佈 2023年6月20日
分享:

在任何程式語言中,瞭解資料類型至關重要,C# 也不例外。 無論是 int 類型還是浮點類型,每種類型都保存特定類型的信息,也就是所謂的實際數據。

C# 基礎知識

C# 是一種強類型語言。 但你會問,強類型語言是什麼意思? 這意味著每個變數和物件都必須有一個已宣告的數據類型。 而是資料類型決定了您可以在該變數中儲存什麼類型的資料。

C# 有兩種類型資料: 值類型和參考類型。這些也是您可能聽說的用戶定義類型。

C# 中的值類型

在 C# 中,值類型是簡單的。 當您宣告一個值類型變量時,實際儲存的數據即為您賦予該變量的值。 如果您更改了一個變數的值,它不會影響其他變數。

在 C# 中,最常見的值類型包括

  • 整數(由 int 類型表示)
  • 浮點數(由「float 和 double 類型」表示)
  • 布林值,可以是 true 或 false。

    首先讓我們談談 int 類型。(n)在C#中,int類型是一種32位元的數據類型,可以儲存從-2,147,483,648到2,147,483,647的整數。以下是一個範例

int myInteger = 15;
int myInteger = 15;
Dim myInteger As Integer = 15
VB   C#

現在,進入浮點類型。 在C#中,有兩種浮點數類型:floatdouble

float 類型是精度高達 7 位數的 32 位浮點數。 它非常適合科學計算。 可以這樣聲明 float 類型的變量:

float myFloat = 12.34F;
float myFloat = 12.34F;
Dim myFloat As Single = 12.34F
VB   C#

double 類型是一種 64 位元浮點類型,精度可達 15 到 16 位數字。 它比 float 類型更準確,常用於財務和貨幣計算。 這是一個 double 型別變數的範例:

double myDouble = 12.3456789;
double myDouble = 12.3456789;
Dim myDouble As Double = 12.3456789
VB   C#

C#中的預定義資料類型

好的,繼續前進。 C# 提供多種「預定義資料型別」,您可以在應用程式中使用。 這些是您可以用來定義自己的「使用者定義類型」的基本構建模塊。

以下是一些範例:

  • byte:這是一個8位元無符號整數,範圍從0到255。
  • char:它是一個 16 位元的 Unicode 字元。
  • decimal:由於其高精度,適合用於「財務和貨幣計算」。
  • bool:儲存「true」或「false」,非常適合邏輯運算。

    每一個「預定義資料類型」都有其特定用途和「預設值」,因此選擇適合您需求的類型非常重要。!

C#中的預設值

在 C# 中,每種資料型別都有其預設值。 對於值類型變數,如果您不初始化它們,它們會自動採用其預設值。

例如,int 類型的預設值為 0,而浮點數值類型的預設值(浮點或雙精度)是 0.0。

參考型別的預設值為 null,表示其不參考任何物件。

C# 中的類型轉換

有時候,你可能需要將一種數據類型轉換為另一種。 這稱為類型轉換,C# 支援兩種轉換:隱式轉換和顯式轉換。

當您將一種類型的值分配給可以容納更大值的相容類型的變量時,會自動發生隱含轉換。 例如,您可以指派一個(n)將 int 類型轉換為 double 類型而不丟失信息。

int myInt = 10;
double myDouble = myInt;                // Implicit conversion
int myInt = 10;
double myDouble = myInt;                // Implicit conversion
Dim myInt As Integer = 10
Dim myDouble As Double = myInt ' Implicit conversion
VB   C#

顯式轉換,也稱為強制轉換,當你嘗試在不相容的類型之間進行轉換或從較大類型轉換為較小類型時是必需的。 将目标类型放在要转换的值前面的括号中即可完成。

double myDouble = 10.5; 
int myInt = (int)myDouble;              // Explicit conversion, decimal part is lost
double myDouble = 10.5; 
int myInt = (int)myDouble;              // Explicit conversion, decimal part is lost
Imports System

Dim myDouble As Double = 10.5
Dim myInt As Integer = CInt(Math.Truncate(myDouble)) ' Explicit conversion, decimal part is lost
VB   C#

C#中的引用類型

在 C# 中,引用類型的運作方式與值類型稍有不同。引用類型變數不儲存實際數據,而是儲存數值所在的位址。 換句話說,它「指向」記憶體中的另一個位置。

因此,如果您更改引用型物件,它也會影響到另一個變數。 這是因為引用類型變量會自動反映其指向的記憶體地址中實際數據的變更。

現在,這聽起來可能有點複雜,但讓我們通過一個例子來解析。 假設我們有一個名為 Person 的類別:

class Person
{
    public string Name { get; set; }
}
class Person
{
    public string Name { get; set; }
}
Friend Class Person
	Public Property Name() As String
End Class
VB   C#

然後我們創建這個類的兩個「引用型別」變數:

Person person1 = new Person { Name = "Alice" };
Person person2 = person1;
Person person1 = new Person { Name = "Alice" };
Person person2 = person1;
Dim person1 As New Person With {.Name = "Alice"}
Dim person2 As Person = person1
VB   C#

在此,person1person2 均指向相同的記憶體位置。 如果我們改變 person1person2 也會反映這一變化:

person1.Name = "Bob"; 
Console.WriteLine(person2.Name);                // Outputs "Bob"
person1.Name = "Bob"; 
Console.WriteLine(person2.Name);                // Outputs "Bob"
person1.Name = "Bob"
Console.WriteLine(person2.Name) ' Outputs "Bob"
VB   C#

C#中的陣列

陣列是一種參考型別,用來保存多個相同資料型別的值。 這就像一個容器,你可以在其中存儲一組值,這些值全部都是相同類型的。

要宣告一個陣列,首先要指定其元素的資料類型,然後加上方括號。 然後,您使用 new 關鍵字來創建陣列並指定其長度。

int [] myIntArray = new int [5];                 // Array of int type, can hold 5 values
int [] myIntArray = new int [5];                 // Array of int type, can hold 5 values
Dim myIntArray(4) As Integer ' Array of int type, can hold 5 values
VB   C#

要存取陣列的元素,請使用從 0 開始的索引,0 對應於第一個元素。

myIntArray [0] = 10;                           // Sets the first element of the array to 10
myIntArray [0] = 10;                           // Sets the first element of the array to 10
myIntArray (0) = 10 ' Sets the first element of the array to 10
VB   C#

請記住,C#中的陣列是“參考類型”,因此在一個變數中所做的更改會影響引用同一個陣列的任何“其他變數”。

使用 IronPDF 在 C# 中生成 PDF

IronPDF是一個強大的 C# 程式庫,允許開發人員創建、編輯和提取 PDF 內容。 這可以在生成報告或創建動態發票等任務中派上用場。

入門 IronPDF

首先,您需要安裝 IronPDF。 您可以透過 NuGet,這是一個受歡迎的 .NET 套件管理器,來完成此操作。 在您的套件管理控制台中運行以下命令:

Install-Package IronPdf

從 HTML 創建 PDF

IronPDF 能夠從HTML創建PDF. 這很簡單:

using IronPdf;
var Renderer = new ChromePdfRenderer();
Renderer.RenderHtmlAsPdf("<h1>Hello, World!</h1>").SaveAs("HelloWorld.pdf");
using IronPdf;
var Renderer = new ChromePdfRenderer();
Renderer.RenderHtmlAsPdf("<h1>Hello, World!</h1>").SaveAs("HelloWorld.pdf");
Imports IronPdf
Private Renderer = New ChromePdfRenderer()
Renderer.RenderHtmlAsPdf("<h1>Hello, World!</h1>").SaveAs("HelloWorld.pdf")
VB   C#

上述代碼將生成帶有「Hello, World」的 PDF。!「heading」 請注意,HTML 代碼只是一個字串。 在C#中,string是一種引用類型,也是C#中使用最多的類型之一。

C# 类型(如何为开发人员工作)图1 - Hello World 文本

結論

恭喜! 您深入了解了 C# 类型的世界,理解了值类型、引用类型、预定义的数据类型以及它们如何影响您的编码方式。 您也看到了使用像 IronPDF 這樣的庫的強大功能,以及您對 C# 的掌握如何

IronPDF 提供免費試用IronPDF 的授權起價為 $liteLicensing

< 上一頁
C# 數字類型(開發人員如何工作)
下一個 >
C# 查找(開發者使用方式)

準備開始了嗎? 版本: 2024.12 剛剛發布

免費 NuGet 下載 總下載次數: 11,622,374 查看許可證 >