Ser*_*pia 2 .net c# linq distinct
这就是我想要做的.使用由空格分隔的一系列数字.保存这些数字后,我想只返回一次所有数字的字符串,即使数字在序列中出现n次.
string[] tempNumbers = textValue.Split(' ');
IEnumerable<string> distinctNumbers = tempNumbers.Where(value => value.Distinct());
Run Code Online (Sandbox Code Playgroud)
我收到这个错误:
Error 2 Cannot implicitly convert type 'System.Collections.Generic.IEnumerable<char>' to 'bool' c:\users\sergio\documents\visual studio 2010\Projects\LinqPlayground\LinqPlayground\SetSemanticsExample.cs 67 75 LinqPlayground
Run Code Online (Sandbox Code Playgroud)
扩展方法IEnumerable.Distinct不是谓词函数.它在a上运行IEnumerable<T>并返回一个新IEnumerable<T>元素,其中每个元素只出现一次.
要修复代码,请执行以下操作:
IEnumerable<string> distinctNumbers = tempNumbers.Distinct();
Run Code Online (Sandbox Code Playgroud)
我想只返回一次所有数字的字符串
如果您希望将结果作为单个空格分隔的字符串,那么除了上述内容之外,您还需要调用string.Join:
string result = string.Join(" ", distinctNumbers.ToArray());
txtResult.Text = result;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1247 次 |
| 最近记录: |