小编use*_*107的帖子

LINQ使用字符串上的Select返回奇怪的值

此代码返回int 49

IEnumerable<int> numbersList = numbers.Select(x => Convert.ToInt32(x));

int sum = numbersList.Sum();
Run Code Online (Sandbox Code Playgroud)

numbers变量是一个值为1的字符串.

如果我使用

numbers.Split(',').Select(x => Convert.ToInt32(x));
Run Code Online (Sandbox Code Playgroud)

然后我得到了正确的答案.我知道split传回一个字符串数组所以我使用了一个单值为1的字符串数组而不是分裂,这也是有用的.

string[] sa = new string[] { "1" }
Run Code Online (Sandbox Code Playgroud)

我的问题是有谁知道为什么使用字符串上的选择返回错误的值?

谢谢.

c# linq

3
推荐指数
1
解决办法
429
查看次数

标签 统计

c# ×1

linq ×1