C# 如何在循环外使用一个在循环内从 string 变为 int 的变量?

C# How do I use a variable outside of a loop that changes from string to int inside the loop?

代码:

string[] numbers = new string[2];
for (int i = 0; i < numbers.Length; i++)
{
    numbers[i] = Console.ReadLine();
    if (int.TryParse(numbers[i], out int numberTry) && i == 0)
        Console.WriteLine("That would be a number yes.");

    else if (int.TryParse(numbers[i], out numberTry))
        Console.WriteLine("Lovely work! That is indeed two numbers!");

    else
    {
        Console.Clear();
        Console.WriteLine("That's not a number. I am dissapointed.");
        Console.ReadKey();
        Environment.Exit(0);
    }
}

我的问题是我不能在循环外将 numbers[] 用作 int,因为它在循环内从字符串变为 int。我需要能够使用一种方法将其作为 int 发送,以对数字 [0] 和数字 [1] 执行操作。 提前致谢!

你能试试这个吗?应该可以。

    int[] numbers = new int[2];
    for (int i = 0; i < numbers.Length; i++)
    {
        var number = Console.ReadLine();
        if (int.TryParse(number, out int numberTry) && i == 0)
        {
            Console.WriteLine("That would be a number yes.");
            numbers[i] = numberTry;
        }
        else if (int.TryParse(number, out numberTry))
        {
            Console.WriteLine("Lovely work! That is indeed two numbers!");
            numbers[i] = numberTry;
        }
        else
        {
            Console.Clear();
            Console.WriteLine("That's not a number. I am dissapointed.");
            Console.ReadKey();
            Environment.Exit(0);
        }
    }

    Console.ReadKey();