首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C#:需要从List <>返回重复项

在C#中,要从List<>中返回重复项,可以使用LINQ查询。以下是一个示例,说明如何从List<>中返回重复项:

代码语言:csharp
复制
using System;
using System.Collections.Generic;
using System.Linq;

class Program
{
    static void Main()
    {
        List<int> numbers = new List<int> { 1, 2, 3, 4, 5, 2, 3, 6, 7, 8, 9, 10, 1 };

        var duplicates = GetDuplicates(numbers);

        foreach (var duplicate in duplicates)
        {
            Console.WriteLine(duplicate);
        }
    }

    static List<T> GetDuplicates<T>(List<T> list)
    {
        return list.GroupBy(x => x)
                   .Where(group => group.Count() > 1)
                   .Select(group => group.Key)
                   .ToList();
    }
}

在这个示例中,我们创建了一个名为numbers的List<>,其中包含一些重复的整数。我们使用GetDuplicates()方法从List<>中返回重复项。GetDuplicates()方法使用LINQ查询对List<>进行分组,然后筛选出计数大于1的组,最后返回这些组的键作为重复项。

在这个示例中,输出将是:

代码语言:txt
复制
1
2
3

这些是List<>中的重复项。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

【100个 Unity实用技能】| C#List.Find 方法详解 查找符合要求的第一个元素并返回

---- Unity 实用小技能学习 C#List.Find 方法详解 查找符合要求的第一个元素并返回 前面有篇文章介绍了List通过Exists来判断是否存在这个对象,返回一个布尔值。..., 19, 20 }; var l = list1.Find(t => t == 15); Debug.Log("返回的值:"+l); 引用类型 //引用类型...List中的被找到的对象的值,如果找不到,就会返回该种对象的默认值。...对象为 引用类型 时,对象的值为指向该对象的内存地址,可以直接用那个返回值直接修改list内的元素,此时对象的默认值为null。...如果对象为 值类型 ,对象的值就是对象本身,返回值传回的是该对象的一个拷贝,对传回那个对象的修改不能影响list中的元素。

1.7K30

.NET面试题系列 - IEnumerable的派生类

堆栈的另外一种基本操作就是察看栈顶的数据。Pop 操作会返回栈顶的数据,但是此操作也会把此数据从堆栈中移除。...如果只是希望察看栈顶的数据而不是真的要移除它,在 C#语言中有一种名为 Peek(取数)的操作可以实现。当然,此操作在其他语言和实现中可能采用其他的名称(比如 Top)。...队列的另外一个主要操作就是查看起始数据。就像在 Stack 类中的对应操作一样,Peek 方法用来查看起始的数据。这种方法仅仅返回数据,而不会真的把数据从队列中移除。...注意C#没有List,只有IList,IList和List。其中第三个继承第二个。第一个是第二个的非泛型版本。ArrayList则继承第一个。...Yield本质上是一个状态机,它每次都返回全新的对象。 在C#中使用foreach将会隐式的调用MoveNext方法。可以通过查看IL得知foreach运作的全过程。

1.7K20

C# 字符串排序时指定偏好的排列顺序

这样第一个需求就来了,也就是要求第一个选项的某一与第二个选项全部组合过之后,再换下一。....OrderBy(x => x)); 可以看到,通过 List 调用 OrderBy 方法就排好了(string.Join 只是把列表连接成字符串),效果就是 “大” 与 “长、宽、高” 都组合完之后才换下一进行组合...另外说一下 Compare 方法的规则:x > y 则需返回大于 0 的值(一般用 1),x < y 返回小于 0 的值(一般用 -1),x == y 则返回 0。.../) C# 对于 C# 中 Task 的 StartNew 与 WhenAll 相互配合的实验 【问题】为什么 System.Timers.Timer 更改间隔时间后的第一次触发时间是设定时间的三倍?...C#10 新特性 [调用方参数表达式] 解决了我七年前的困惑 【分享】C# 字节帮助类 ByteHelper C# 在自定义的控制台输出重定向类中整合调用方信息 C# 枚举转列表 .NET Windows

24541

C#进阶-LINQ表达式基础语法

select u.name).ToList();/* C#版本2 */List nameList = list.OrderByDescending(u => u.age).Where(...40 && u.name.StartsWith("Liu")).Select(u => u.age).Average();35 /* 输出结果 */4、Max/Min/Sum/ 最大/小值/总和这里仅参考...,才会返回True,只要有一条不满足就返回False;All()函数的语法和Any()函数的语法相同,上面的例子把Any()直接替换成All()即可。...;类似的还有First()、FirstOrDefault()、Last()、LastOrDefault(),这里给大家做了一个异常表格记录了各种情况的返回值:函数没有满足一条满足多条满足list本身为NullSingle...三、LINQ表达式总结在现代编程中,Linq(Language Integrated Query)表达式是.NET语言中的一强大功能,允许开发者以声明式方式查询和操作数据。

10121

C# 发展历史及版本新功能介绍

IRevolve { } 它们等效于以下声明: C# class Earth : Planet, IRotate, IRevolve { } 限制 处理分部类定义时遵循下面的几个规则: 要作为同一类型的各个部分的所有分部类型定义都必须使用...C# 2.0 版引入了迭代器。 简单地说就是可以使用 foreach 循环对 List(或其他可枚举类型)中的进行循环访问。...查询是一组指令,描述要从给定数据源(或源)检索的数据以及返回的数据应具有的形状和组织。 查询与它生成的结果不同。 通常情况下,源数据按逻辑方式组织为相同类型的元素的序列。...后续版本的 C# 偶尔会向依赖添加新类型或成员。...未来版本的 C# 中还会包括需要标准库中的新类型和成员的新功能。 必须了解如何管理工作中的这些依赖。 管理依赖 C# 编译器工具现在从支持的平台上 .NET 库的发布周期分离。

4.2K20

C#3.0新增功能09 LINQ 标准查询运算符 04 运算

方法 方法名 说明 C# 查询表达式语法 详细信息 Distinct 删除集合中的重复值。 不适用。...用关系数据库术语表达,就是说 Join 实现了内部联接,这种联接只返回那些在另一个数据集中具有匹配的对象。...GroupJoin 方法在关系数据库术语中没有直接等效,但实现了内部联接和左外部联接的超集。 左外部联接是指返回第一个(左侧)数据源的每个元素的联接,即使其他数据源中没有关联元素。...方法 方法名 说明 C# 查询表达式语法 详细信息 ElementAt 返回集合中指定索引处的元素。 不适用。...名称以“To”开头的方法可枚举源集合,并将放入相应的集合类型。 方法名 说明 C# 查询表达式语法 详细信息 AsEnumerable 返回类型化为 IEnumerable 的输入。

9.6K20

Python语法必备篇——Python中的 列表 【顶级入门教程 全面讲解】

而且 列表 的数据不需要具有相同的类型 创建一个列表,只要把逗号分隔的不同的数据使用方括号括起来即可 例如: ['CSDN', 'XiaoY', 1998, 100000] ["呆呆敲代码的小Y",...+ 号用于组合列表,* 号用于重复列表。...包含以下列表函数: 序号 函数 1 len(list) 列表元素个数 2 max(list) 返回列表元素最大值 3 min(list) 返回列表元素最小值 4 list(seq) 将元组转换为列表...seq) 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表) 4 list.index(obj) 从列表中找出某个值第一个匹配的索引位置 5 list.insert(index, obj...) 将对象插入列表 6 list.pop([index=-1]) 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值 7 list.remove(obj) 移除列表中某个值的第一个匹配 8

1.3K30
领券