閱讀627 返回首頁    go 阿裏雲 go 技術社區[雲棲]


parse和Tryparse區別

 
Convert.ToInt32
int.Parse(Int32.Parse)
int.TryParse
(int)
四者都可以解釋為將類型轉換為 int,那它們的區別是什麼呢?

 

Convert.ToInt32int.Parse 較為類似,實際上 Convert.ToInt32 內部調用了 int.Parse:

  • Convert.ToInt32 參數為 null 時,返回 0;
  • int.Parse 參數為 null 時,拋出異常。  
  • 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

最後更新:2017-04-02 22:15:58

  上一篇:go jsp:include參數傳送接收與應用
  下一篇:go 解決android java.lang.ClassCastException android.app.Application