如果数组中的2个字符串值相同,我如何比较?
例如
如果有人输入Apple, Orange, Banana, Apple
我想检查唯一值的数量。
只有Orange和Banana在这里是独一无二的,所以结果将是2。
答案 0 :(得分:2)
如果您只想计算唯一值,可以使用.Distinct()
方法:
List<string> fruits = new List<string>{ "Apple", "Orange", "Banana", "Apple"};
int numberOfUniqueFruits = fruits.Distinct().Count();
要获取仅出现一次的项目,您可以获得那些.Count()== 1:
var uniqueFruits = fruits.Where(n => fruits.Count(f => f == n) == 1).ToList();
答案 1 :(得分:0)
using System;
using System.Linq;
public class Program
{
public static void Main()
{
var x = new string[]
{
"Apple",
"Orange",
"Banana",
"Apple"
};
var i = x.GroupBy(c => c.ToUpper()).Select(c => new {c, count = c.Count()}).Count(c => c.count == 1);
Console.WriteLine(i);
}
}
如果您想要区分大小写,请删除.ToUpper()
。