string[] s = { "aaa", "bbb", "aaa", "bbb", "ccc", "aaa" };
string[] q = s.Distinct().ToArray();
linq查询,groupby名字where(count>1)
没用过linq 数组中重复的名字有很多,不重复的名字也有很多,这个方法可以实现吗
@中华神: 不会有问题的.虽然自己写算法也能实现,但这个操作比较块.
自己写算法的话,就定义一个list,包括一个用户名,跟计数.
遍历原数组,往新list里添加,存在就加计数.
遍历完成后再遍历list里面计数大于1的就是你要的了.
其实逻辑上跟上面的linq是一样的
string[] a = new string[] { "张三", "李思", "王五", "赵六", "李建东", "甘家口", "南奎丽", "oodi", "顶峰网", "南阳佳腾" };
string[] c = new string[] { "张三", "李思", "王五", "赵六" };
string b = string.Empty;
foreach (var item in a)
{
if (c.Contains(item))
{
b += item + ",";
}
}
label3.Text = b;
string[] query=list.Group(g=>g).Where(c=>c.Count()>1).Select(s=>s.First()).ToArray();
3L正解