int[] a = Array.ConvertAll(Console.ReadLine().Split(' '), aTemp => Convert.ToInt32(aTemp));
由于这不是放置元素的传统方法,有人可以解释吗?
答案 0 :(得分:1)
这段代码是从控制台读取一行,天真地希望用户插入一堆用空格分隔的整数,并用这些整数填充int
的数组。
Console.ReadLine()
从用户读取一行文本。
Split(' ')
按空格分隔字符串,从而形成字符串数组。
ConvertAll
接受一种类型的数组,并使用其作为参数的转换方法返回另一种类型的数组。
aTemp => Convert.ToInt32(aTemp)
是一种转换方法,例如lambda expression.
我写这封信是“天真地希望用户...”,因为您永远不应该信任用户的输入。如果用户输入诸如1 gr 4 6
之类的值,则此代码将异常中断。