我在C#中具有以下代码,该代码检查列表中的项目是否相等(出于所有实际目的的整数列表):
intList.Distinct().Count() == 1
如果列表中的所有值相等,则上面的代码有效。
但是,如果我有以下情况:
intList = {1, 1, 0}
然后上述代码失败。有人可以建议当列表中的所有值都不相等时,如何检查列表中的相似值。
答案 0 :(得分:4)
怎么样
bool isDup = intList.Count == intList.Distinct().Count();
答案 1 :(得分:0)
if (intList.Distinct().Count() != intList.Count)
{
// the list contained at least two values that were the same
}
答案 2 :(得分:0)
Linq Group()
和Count()
个组
bool allUnique = intList.GroupBy(x => x).All(x => x.Count() == 1);
通过使用HashSet()
bool allUnique = new HashSet<int>(intList).Count == intList.Count;