我怎样才能 TryParse() 用户输入的字符串?

How can I TryParse() a string inputted by the user?

我有一个 C# 程序,它接受用户输入的数字 (r.length = Console.ReadLine();),然后调用 Double.Parse(r.length);。但是,我想使用 TryParse();,其中 returns false 是失败的。所以我有一个 if...else 语句,如果出现错误,它会输出一条消息。条件语句如下:if(Double.TryParse(Console.ReadLine, out r.length));。但是不允许将 method group 转换为 string

编辑:根据要求,这是一个演示我的问题的示例程序:

using System;

namespace sample
{
    class sample
    {
        static void Main(string[] args)
        {
            double my_number;

            Console.WriteLine("Enter a number:");
            if(Double.TryParse(Console.WriteLine, out my_number))
            {}
            else
            {
                Console.WriteLine("Error: Expected number.");
            }
            Console.ReadKey();
        }
    }
}

错误:Argument '1': cannot convert from 'method group' to 'string' (CS1503)

那么我该如何解决这个问题?

if (!Double.TryParse(Console.ReadLine(), out my_number))
   Console.WriteLine("not a double.");

几件事:

  1. Console.WriteLine 写入控制台。您需要使用 Console.ReadLine() 方法来读取输入字符串。
  2. Console 没有 GetKey 方法。听起来你需要 ReadKey method.

    double my_number;
    
    Console.WriteLine("Enter a number:");
    if (Double.TryParse(Console.ReadLine(), out my_number))
    {
    
    }
    else
    {
        Console.WriteLine("Error: Expected number.");
    }
    Console.ReadKey();