)Convert、Parse、TryParse、(int) 區別

來源:互聯網
上載者:User

文章來自:秋天裡的.NET

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

Convert.ToInt32 與 int.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;

(int) 屬 cast 轉換,只能將其它數字類型轉換成 int 類型,它不能轉換字串,比如下例就會失敗:

string v = "1";
int n = (int)v;原文:http://www.cnblogs.com/qfb620/archive/2008/04/02/1134758.html

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.