int.Trypasre()
Int32.TryParse(source, result)則無論如何都不拋出異常,只會返回true或false來說明解析是否成功,如果解析失敗,調用方將會得到0值。
int.pasre()
如果解析失敗,Int32.Parse(source)總會拋出異常。
Convert.To32()
Convert.ToInt32(source)在source為null的情況下不會拋出異常而是簡單的返回0給調用方。
Pasre 與 Convert 的本質區別
Convert 用來轉換繼承自object類型的類型(當然所有的類型都是繼承自object的),但是一般Convert用來轉化直接就是obejct的類型
Parse只用來轉換String類型的數據。
性能上:
無論是Pasre,還是會Convert 底層都是調用Int類的 Pasre()回調只讀類Number身上去進行類型轉換。所以Pasre會比Convert快。
PS:我這裡是對parse與 Convert的一些總結,
大部分來自 http://bbs.csdn.net/topics/280063811。