c#中(int)、int.Parse()、int.TryParse、Convert.ToInt32的區(qū)別詳解
本文對c#中(int)、int.Parse()、int.TryParse、Convert.ToInt32的區(qū)別進行了較為深入的詳細分析,對初學(xué)者而言可以起到鞏固學(xué)習(xí)的目的。詳情如下:
一、(int)變量名[強制類型轉(zhuǎn)換]:
該轉(zhuǎn)換方式主要用于數(shù)字類型轉(zhuǎn)換,從int類型到long,float,double,decimal類型,可以使用隱式轉(zhuǎn)換,但是從long類型到int類型就需要使用顯式轉(zhuǎn)換,也就是該數(shù)據(jù)類型轉(zhuǎn)換方式,否則會產(chǎn)生編譯錯誤。
該方式對于浮點數(shù)會做無條件舍去,失去精確度。
當然,該方式也可以進行object到int得轉(zhuǎn)換,但是,object的值要賦予int類型的值,否則會產(chǎn)生編譯錯誤,而且object為null時也會出錯。
最后切忌的一點,千萬不要用來處理char類型到int類型的轉(zhuǎn)換,否則傳回的的值是ASCII代碼,而并不是你想要的值。
二、int.Parse(string類型變量名)
該方式是將數(shù)字內(nèi)容的字符串轉(zhuǎn)為int類型,如果字符串內(nèi)容為空或者null時,則拋出ArgumentNullException異常;如果字符串內(nèi)容不是數(shù)字,則拋出FormatException異常;如果字符串內(nèi)容所表示數(shù)字超出int類型可表示的范圍,則拋出OverflowException異常。
使用該方法切忌的一點就是只能處理字符串內(nèi)容,而且字符串內(nèi)容只能在int類型可表示的范圍之內(nèi)。
三、int.TryParse(string s, out int result)
該方式也是將數(shù)字內(nèi)容的字符串轉(zhuǎn)為int類型,但是該方式比int.Parse優(yōu)越的地方,就是它不會出現(xiàn)異常。如果轉(zhuǎn)換成功返回true,如果轉(zhuǎn)換失敗返回false。很明顯,最后一個參數(shù)為輸出值,如果轉(zhuǎn)換失敗,輸出值為0;如果轉(zhuǎn)換成功,則輸出相應(yīng)的值。
四、Convert.ToInt32
該方式不僅可以將字符串轉(zhuǎn)為int類型,還可以將其它類型的值轉(zhuǎn)成int類型。變量若為object或string類型,當其值為null時,會傳回0,不會造成程序錯誤,但是若此string類型的值為string.Empty,在轉(zhuǎn)型成int時,仍會造成程序錯誤。該方式對于浮點數(shù)會做四舍五入。
該方式同強制轉(zhuǎn)換一樣,不能用來處理char類型,否則傳回的是ASCII代碼。
- C#使用Enum.TryParse()實現(xiàn)枚舉安全轉(zhuǎn)換
- C#(int)中Convert、Parse、TryParse的區(qū)別
- C#字節(jié)數(shù)組(byte[])和字符串相互轉(zhuǎn)換方式
- C#中對象與JSON字符串互相轉(zhuǎn)換的三種方式
- c#?如何將字符串轉(zhuǎn)換為大寫或小寫
- C#中字符串與字節(jié)數(shù)組的轉(zhuǎn)換方式
- C#日期格式字符串的相互轉(zhuǎn)換操作實例分析
- C# 字符串、數(shù)組和List的截取和轉(zhuǎn)換實例
- C#實現(xiàn)char字符數(shù)組與字符串相互轉(zhuǎn)換的方法
- C# 中 TryParse如何將字符串轉(zhuǎn)換為特定類型
相關(guān)文章
C#使用Winform連接SQL Server數(shù)據(jù)庫的詳細步驟
Windows Forms是一個用于構(gòu)建Windows桌面應(yīng)用程序的圖形用戶界面(GUI)庫,它是.NET Framework的一部分,允許開發(fā)者快速創(chuàng)建豐富的交互式界面,本文給大家介紹了C#使用Winforms連接SQL Server數(shù)據(jù)庫的詳細步驟,需要的朋友可以參考下2024-09-09
C#使用post發(fā)送和接收數(shù)據(jù)的方法
這篇文章主要介紹了C#使用post發(fā)送和接收數(shù)據(jù)的方法,涉及C#使用post收發(fā)數(shù)據(jù)的相關(guān)技巧,非常具有實用價值,需要的朋友可以參考下2015-04-04

