在C#中,要將一個(gè)字符串或浮點(diǎn)數(shù)轉(zhuǎn)換為整數(shù),基本上有三種方法:
(1)使用強(qiáng)制類(lèi)型轉(zhuǎn)換:(int)浮點(diǎn)數(shù)
(2)使用Convert.ToInt32(string)
(3)使用int.Parse(string)或int.TryParse(string,out int)
在實(shí)際使用時(shí),當(dāng)要轉(zhuǎn)換的字符串或數(shù)字帶有小數(shù)時(shí),發(fā)現(xiàn)它們有以下區(qū)別:
(1)方法一:截?cái)?方法二:四舍五入
int a=(int)2.8; //結(jié)果為2
int b=Convert.ToInt32(2.8); //b的值為3
(2)int.Parse方法的參數(shù)如果不能轉(zhuǎn)換為整數(shù),則報(bào)異常。
如 int c=int.Parse("2.8"); //報(bào)異常,說(shuō)明其參數(shù)必須是整數(shù)字符串
//int.TryParse
int c = -1;
int.TryParse("2.8", out c); //不能轉(zhuǎn)換成功,結(jié)果為0
int.TryParse("2", out c); //轉(zhuǎn)換成功,結(jié)果為2
那么,當(dāng)要轉(zhuǎn)換的信息為一個(gè)字符而不是數(shù)字的時(shí)候又怎么樣呢?
結(jié)果如下所示:
int a = (int)'a'; //結(jié)果為97,注意是字符,而不是字符串(如果是字符串,編譯不能通過(guò))
int b = Convert.ToInt32("a"); //報(bào)異常
int c=int.Parse("a"); //報(bào)異常
int d = -1;
int.TryParse("a", out d); //結(jié)果為0
更多信息請(qǐng)查看IT技術(shù)專欄