我刚刚读过这个问题: 使用LINQ在一行代码中将string []转换为int []
有一个字符串数组:
var arr = new string[] { "1", "2", "3", "4" };
Run Code Online (Sandbox Code Playgroud)
其中一个可接受的答案是:
int[] myInts = arr.Select(int.Parse).ToArray();
Run Code Online (Sandbox Code Playgroud)
我自己尝试了并收到了cs04011编译器错误:
string str = "4 8 15 16 23 42";
int[] intArray = str.Split(' ').Select(int.Parse).ToArray();
Run Code Online (Sandbox Code Playgroud)
这是页面,描述了这个编译器错误: MSDN
如果我这样做,它工作正常:
int[] intArray = str.Split(' ').Select(p=>int.Parse(p)).ToArray();
Run Code Online (Sandbox Code Playgroud)
我想知道,为什么接受上一个问题的asnwer工作正常并且我收到错误?
我的猜测是我的视觉工作室(2008年表达,目标框架= 3.5)并不好,但我没有找到任何证据.
提前致谢!