【问题标题】:How to change try/catch to double.TryParse [closed]如何将 try/catch 更改为 double.TryParse [关闭]
【发布时间】:2021-12-27 12:53:18
【问题描述】:

如何将此代码更改为 double.TryParse?没有 try/catch。

static double PromptForDouble(string promptMessage)
{
    Console.WriteLine(promptMessage);
    while (true)
    {
        try
        {
            var input = Console.ReadLine(); // input = "12124124"
            return double.Parse(input); // 1.234
        }
        catch
        {
            Console.WriteLine("Zła wartość");
        }
    }
}

}

【问题讨论】:

  • 您尝试了什么,什么没有奏效?

标签: c# double tryparse


【解决方案1】:

你试过什么?

            var success = double.TryParse("78787888", out var result);
            if (success)
                return result;
            else
                Console.WriteLine("Zła wartość");

...然后返回一些指示无效输入的内容

【讨论】:

    【解决方案2】:

    这样就可以了。

            var input = "122.3";
            if (double.TryParse(input, out var parsedInput))
            {
                Console.WriteLine($"success {parsedInput}");
            }
            else
            {
                Console.WriteLine($"not able to parse {input}");
            }
    
    

    【讨论】:

      【解决方案3】:

      我认为你的意思是这样的:

      static void Example() { 
          var input = Console.ReadLine();
          if(double.TryParse(input, out double d)) {
              Console.WriteLine(d);
          } else {
              Console.WriteLine("Please Insert a Double!");
          }
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-04-23
        • 1970-01-01
        • 2011-06-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多