Как параллельно итерироваться по нескольким последовательностям?
foreach (string command in commands)
{
foreach (string name in namescommands)
{
Console.writeline(command + name);
break;
}
}
В данном коде выходит такой результат:
command name
command name2
command name3
А мне необходимо, что бы было вот так.
command name
command2 name2
command3 name3
Уже не приложу голову как это реализовать...
Ответы (2 шт):
Автор решения: CrazyElf
→ Ссылка
Вам нужно параллельно итерироваться по двум последовательностям, в Python это довольно стандартная вещь, а в C# не все знают, что там есть Enumerable.Zip
Что-то типа такого у вас будет:
foreach (var (command,name) in commands.Zip(namescommands, (command, name) => (command, name)))
{
Console.writeline(command + name);
}
Но точно за синтаксис не поручусь, надо уточнять.
Автор решения: xkrystalll
→ Ссылка
int countNameCommands = 3;
for (int i = 0; i < countNameCommands; i++)
{
string name = namescommands[i];
string command = commands[i];
Console.WriteLine(name + command);
}
Вывод:
name command
name1 command1
name2 command2