Как объявить и инициализировать несколько переменных (с разными именами) в цикле for без использования массивов? - PullRequest
0 голосов
/ 14 июня 2019

Я пытаюсь выполнить работу, которую должен выполнять массив, но фактически не использую ее. Мне было интересно, возможно ли это, и если да, то как?

Я должен инициализировать различные переменные, например:

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 Ответ

1 голос
/ 14 июня 2019

Вы не можете создавать переменные с динамическими именами в 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
...