1. 程式人生 > >double.TryParse()和double.Parse()的比較

double.TryParse()和double.Parse()的比較

一、double.TryParse("1234,34,49",out temp)
這個方法用來檢視字串"1234,34,49"是不是能夠轉成一個double型別的數字,如果能轉換成功則函式返回值為true,且用out temp來儲存這個轉換後的double,如果不能轉換則false,temp保持原來的值不變.

 

差別就在於Parse和TryParse之中轉換不匹配時,是否丟擲錯誤. 他們之中核心的轉換方法是一樣的,區別大概如下:
double Parse(string value){
    try{
        if(轉換失敗){
            throw new FormatException(...);
       }
    }
    catch(FormatException){
    //其他判斷...
    //返回其他值,或者throw;
    }
    return Nan;
}

bool TryParse(string value,out double result){
    if(轉換失敗){
      return false;
    }
    return true;

 

二、因為await 只能wait Task,並且await 只能用在async 標記的方法中,async 關鍵字表明這是個非同步方法。

================

字串型別的Value1轉換為Double(value1為空或其他字元時,轉換失敗,則給value1賦值預設值dValue1)

 Double dValue1 = 0;
 bool bValue1 = Double.TryParse(strQuery[i].Value1, out dValue1);
 OutTag.coa_list[i].value_1 = dValue1;