【发布时间】:2021-09-21 10:04:53
【问题描述】:
问题
我正在尝试使用内置方法 array.Distinct.First() 从 C# 数组中返回唯一元素。该方法适用于某些数组,但返回此数组{11,11,11,14,11,11} 的错误元素。它给了我11 的输出,这是不正确的,因为该数组中的唯一元素应该是14。
我知道有一种方法可以使用 predicate 函数来做到这一点,但这就是我问的原因,我不知道
代码
public static int getUnique(IEnumerable<int> numbers){
return numbers.Distinct().First();
//you can bet i tried .FirstOrDefault()
//without any success
}
非常感谢任何有助于使该代码返回正确值的帮助。
【问题讨论】:
-
{11,11,11,14,11,12}等场景应该返回什么? -
array.GroupBy(x => x).Where(x =>x.Count() == 1).First() -
好的,我需要查看更多 C# 文档,我认为它会返回数组的唯一元素。它还返回其他数组本身的唯一元素
-
@Liam,14 岁和 12 岁