淺析四種C#轉換的區(qū)別
C#轉換中的(int):
(int)是一種類型轉換;當我們從int類型到long,float,double,decimal類型,可以使用隱式轉換,但是當我們從long類型到int類型就需要使用顯式轉換,否則會產生編譯錯誤。
C#轉換中的int.Parse():
int.Parse()是一種類容轉換;表示將數(shù)字內容的字符串轉為int類型。如果字符串為空,則拋出ArgumentNullException異常; 如果字符串內容不是數(shù)字,則拋出FormatException異常;如果字符串內容所表示數(shù)字超出int類型可表示的范圍,則拋出OverflowException異常;
C#轉換中的int.TryParse :
int.TryParse 與 int.Parse 又較為類似,但它不會產生異常,轉換成功返回 true,轉換失敗返回 false。 最后一個參數(shù)為輸出值,如果轉換失敗,輸出值為 0 4 Convert.ToInt32()是一種類容轉換;但它不限于將字符串轉為int類型,還可以是其它類型的參數(shù);
比較:
Convert.ToInt32 參數(shù)為 null 時,返回 0;
int.Parse 參數(shù)為 null 時,拋出異常。
Convert.ToInt32 參數(shù)為 "" 時,拋出異常;
int.Parse 參數(shù)為 "" 時,拋出異常。
Convert.ToInt32 可以轉換的類型較多;
int.Parse 只能轉換數(shù)字類型的字符串。
【編輯推薦】