Parse與TryParse的區別

2021-09-07 23:42:08 字數 731 閱讀 4049

convert.toint32、int.parse(int32.parse)、int.tryparse、(int) 四者都可以解釋為將型別轉換為 int,那它們的區別是什麼呢?

convert.toint32 與 int.parse 較為類似,實際上 convert.toint32 內部呼叫了 int.parse:

int.tryparse 與 int.parse 又較為類似,但它不會產生異常,轉換成功返回 true,轉換失敗返回 false。最後乙個引數為輸出值,如果轉換失敗,輸出值為 0。

int m; 

if(int.tryparse("2"),out m)

返回true ,執行{}內,並給m賦值為2;

if(int.tryparse("ddd"),out m)

返回false,不執行if{}內,並給m賦值為0;

使用parse和tryparse轉換數字字串

基本數字型別包含parse和tryparse方法,可用於將數字字串轉換為指定的數字型別,例如:

tryparse方法是.net2.0中引入的,它能提供有條件的解析。這個方法會返回乙個布林值,以指示解析是否成功,從而可以免去新增異常處理**的麻煩。下面的例子使用了乙個int32型別來演示tryparse的兩種形式:

在第二種形式中,第乙個引數是要解析的文字字串,第二個引數是numberstyles列舉型別,它說明了輸入字串中可能包含的內容,返回值將放在第四個引數中返回。

建議4 TryParse比Parse好之美

如果注意觀察除string外的所有基元型別,會發現他們都有兩個將字串轉型為本身的方法 parse和tryparse。以型別double為例,這兩個方法最簡單的原型為 1 public static double parse string s 2 public static bool tryparse...

Convert與Parse的區別

對null值的處理方法 convert.toint32 null 返回0,不會丟擲異常 int.parse null 會丟擲異常 適用範圍 convert可以提供多種型別的轉換 parse只能提供string型別的轉換 對數值的處理 convert.toint32 double value 如果va...

C 中 Convert與Parse的區別

1.convert.todouble與double.parse的區別。實際上convert.todouble與 double.parse 較為類似,實際上 convert.todouble內部呼叫了 double.parse 1 對於引數為null的時候 convert.todouble引數為 nu...