数组输入单行

时间:2016-03-23 22:41:18

标签: c# arrays

我想在一行中输入数字到数组。 不是这样的:1
2
3

但是喜欢1 2 3

    for (int i = 0; i < arr.Length; i++)
                {
                    arr[i] = Console.Read();
                }

帮助?

2 个答案:

答案 0 :(得分:3)

您可以读取一行,然后将其拆分为:

var line = Console.ReadLine();

int[] numbers = line.Split(' ').Select(x => Convert.ToInt32(x)).ToArray();

答案 1 :(得分:0)

这会读取每个字符,而不会强迫您进入新行或者必须为每个条目按Enter键。

for (int i = 0; i < arr.Length; i++)
{
     arr[i] = Convert.ToInt32(Console.ReadKey().KeyChar);
}

如果您希望数字按原样进入,而不是使用ASCII索引,请改用:

for (int i = 0; i < arr.Length; i++)
{
    arr[i] = Console.ReadKey().KeyChar - '0';
}