熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> ASP編程 >> 正文

淺析.NET類型轉換的四種方法

2013-11-15 14:20:13  來源: ASP編程 

  NET類型轉型的四種做法

  ◆ 強制轉型(int)變量名稱

  ◆ intParse(字符串變量名稱)

  ◆ ConvertTo類型(變量名稱)

  ◆ TryParse

  強制轉型 (casting)

  ◆ 浮點數會做無條件捨去失去精確度

  ◆ 可處理 object 轉 int但遇到 object 為 null 時會產生 error

  ◆ 某些情況下如 object 轉型成 int有時正常但有時會無故發生 error原因不明

  ◆ 無法處理 string 轉 int (程序中常會用到的功能)

  ◆ 千萬不可用來處理 char 類型否則傳回的是 ASCII 碼而不是字面上的數字

  intParse(字符串變量名稱)

  ◆ 只能處理 string 轉 int 或其它類型無法處理 string 以外的類型功能有限

  ◆ 遇到 string 為 null 或 stringEmpty 時仍會造成程序 error

  ◆ 亦可變化使用「類型Parse(string)」但參數只能丟 string

  ConvertTo類型(變量名稱)

  ◆ 可處理所有 NET 的類型功能完整

  ◆ 可處理 null幾乎不會因轉型造成程序 error

  ◆ 透過「ConvertToInt(變量)」轉型成 int 時變數若為 object 或 string 類型當其值為 null 時會傳回 不會造成程序 error

  ◆ 續前一點若此 string 類型的變量其原始值為 stringEmpty在轉型成 int 時仍會造成程序 error

  ◆ 浮點數會做四捨五入

  ◆ 千萬不可用來處理 char 類型否則傳回的是 ASCII 碼而不是字面上的數字

  測試范例

protected void Page_Load(object sender EventArgs e)
{
    char i = ;
    char i = ;
    string i = null;
    string i = ;
    string i = stringEmpty;
    int i = ;
    int i = ;
    double i = ;
    double i = ;
    object i = null;
    object i = ;

    // 浮點數會做無條件捨去某些情況會無故產生 error
    ResponseWrite((int)i + + (int)i + <br>);

    // 只能處理「字符串」轉型成其它類型功能有限
    ResponseWrite(intParse(i) + + intParse(i) + <br>); 

    // 可處理所有類型及 Null但浮點數會做四捨五入推薦使用但不可處理 char 類型
    ResponseWrite(ConvertToInt(i) + + ConvertToInt(i) + <br>); 
}

  遇到要特別注意數字金額精確度的項目時應特別注意

  TryParse

  這個方法是 NET Framework 版的新功能將數字的字串表示轉換成它的對等 位元帶正負號的整數傳回指示作業是否成功的值 TryParse 方法與 Parse 方法類似除了TryParse 方法在轉換失敗時不會擲回例外狀況以外


From:http://tw.wingwit.com/Article/program/ASP/201311/21906.html
  • 上一篇文章:

  • 下一篇文章:
  • 推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.