2017-04-14 53 views
-1

我試圖使用的TryParse方法輸出的結果,但我停留在如何使用值輸出到顯示結果。有人可以幫助.. ??使用Console.Writeline與三元運算符在C#

using System; 
namespace Video1 
{ 
    class Program 
    { 
     static void Main() 
     { 
      string number = "100.51yutr"; 
      int Result_of_Conversion = 0; 
      bool is_Conversion_Successful = int.TryParse(number, out Result_of_Conversion); 

      is_Conversion_Successful == true ? Console.WriteLine(Result_of_Conversion) : Console.WriteLine("Check"); 
     } 
    } 
} 
+0

'Console.WriteLine(is_Conversion_Successful Result_of_Conversion: 「檢查」);' – Rob

+0

對不起羅布..它不工作。它給出了一個錯誤說「無法確定條件表達式的類型,因爲有‘廉政’和‘串’之間的隱式轉換」你需要調用'Result_of_Conversion.ToString()',看到我的回答如下 – TotalGadha

+0

@TotalGadha。 – m1kael

回答

4

更換

is_Conversion_Successful == true ? Console.WriteLine(Result_of_Conversion) : Console.WriteLine("Check"); 

隨着

Console.WriteLine(is_Conversion_Successful ? Result_of_Conversion.ToString() : "Check"); 
+0

這工作正常..!謝謝。但是,你能否請你解釋爲什麼你在console.writeline方法中包含三元運算符條件?我的意思是我最初遵循的邏輯有什麼錯誤?感謝您的幫助 – TotalGadha

+1

不客氣。這是因爲Console.WriteLine不是一個表達式,它不會返回值或導致值。三元需要產生一個結果,一個值。因此,您需要給它_values_以供選擇。 – m1kael

+0

aahhh ..我現在看到。輝煌。!!謝謝先生再次.. :) – TotalGadha

1

更可讀的方式

class Program 
{ 
    static void Main() 
    { 
     string number = "100.51yutr"; 
     int Result_of_Conversion = 0; 
     bool is_Conversion_Successful = int.TryParse(number, out Result_of_Conversion); 

     var result = is_Conversion_Successful ? Result_of_Conversion.ToString() : "Check"; 
     Console.WriteLine(result); 
    } 
} 
+0

謝謝Mukesh .. :) – TotalGadha