Home [C# 筆記] 指定轉換(Cast)
Post
Cancel

[C# 筆記] 指定轉換(Cast)

資料型別的轉換方法

資料型別的三種轉換方法:

  • System.Convert轉換
  • 型別.Parse方法
  • 指定轉換(Cast)

由於C# 是強型別(Strongly-Typed)而非弱型別(Weakly-Typed),所以在執行時期(Runtime)資料型別通常需要明確地宣告才能通過編譯器的嚴苛考驗。

指定轉換(Cast)

指定轉換(Cast)就是將資料型別,強制轉換成指定的資料型別。

此種轉換的能力最為強大,所以這種強制轉換的方式又稱為「鑄型(Cast)」。

語法

1
變數名稱1 = (變數名稱1的型別) 變數名稱2;
1
2
double i = 9.9;
int j = (int)i; //cast轉換

(int)適合「簡單數據類型」之間的轉換,有小數時會直接捨去。

常犯的錯誤

在使用指定轉換(Cast)最常犯的錯誤就是 「轉換的內容是字串型態」

1
2
string s = "99.8";
int number = (int)s; //報錯,Cannot convert type 'string' to 'int'

上面程式的錯誤為,用指定轉換強制要將 變數s 轉換成 int 型態時,就會發生「string型別無法轉換」的錯誤訊息。

(int) 對小數點的處理

  • (int) 強制轉型,有小數時會直接捨去。
1
2
int x = (int)99.5; //結果為 99
int x = (int)99.1; //結果為 99

[C# 筆記](int)、Convert.ToInt32、int.Parse、int.TryParse by R
Book: Visual C# 2005 建構資訊系統實戰經典教本

This post is licensed under CC BY 4.0 by the author.

[C# 筆記] 型別.Parse 方法

[C# 筆記] 結構化程式設計(Structured Programming)