如何在不使用数组的情况下在for循环中声明和初始化多个变量(具有不同的名称)?

时间:2019-06-13 23:28:44

标签: c# console-application

我正在尝试执行数组应该执行的工作,但实际上没有使用数组。我想知道这是否可能,如果可以,怎么办?

我必须初始化不同的变量,例如:

int value1 = 0;
int value2 = 0;
int value3 = 0;
int valueN = 0;

我想从用户那里收到一个值,该值确定最后一个for循环。

示例:用户-> 4

然后我可以声明4个变量并使用它们。

for (i = 1; i <= 4; i++) {
    Console.Write("Insert a number: ");
    int value(i) = int.Parse(Console.ReadLine());
}

我希望有4个变量被平等地调用,但是唯一的区别是每个变量在名称末尾都添加了不同的数字。

// value1 = 0;
// value2 = 0;
// value3 = 0;
// valueN = 0;

1 个答案:

答案 0 :(得分:1)

您不能在C#中创建动态命名的变量(我和那些想知道为什么要这样做的人一样)。如果您不想使用数组,请考虑使用字典-在某些情况下,它的性能要优于数组。

Dictionary<string, int> values = new Dictionary<string, int>();
for (int i = 1; i <= 4; i++)
{
    values.Add("value" + i, 0);
}

value["value1"]; //retrieve from dictionary