首页 / 问答 / [C#/.NET]C#&.NET/.NET Core中使用LINQ取集合的最后N个元素?

[C#/.NET]C#&.NET/.NET Core中使用LINQ取集合的最后N个元素?

.NET C# Linq 集合 .NET Core 1.34K 次浏览
0

C#&.NET/.NET Core的应用程序编程开发中,给定一个集合,有办法得到集合的最后N个元素吗?

如果框架中没有方法,那么编写扩展方法来实现这一点的最佳方法是什么? 使用LINQ又应该如何实现呢?

回复 [×]
提交评论
请输入评论内容

3 个回答

  • 0

    在.NET Core 2.0+,.NET Standard 2.1或者.NET 5等目标框架的程序来说,内置了TakeLast()的扩展方法,使用示例如下:

    输出结果为:

    Rector的个人主页

    Rector

    2021-11-06 回答

    • 0

      对于.NET Core 2以前的框架来说,LINQ没有提供查询集合最后N个元素的扩展方法,只能自己实现,比如:

      封装成扩展方法如下:

      调用示例:

      Rector的个人主页

      Rector

      2021-11-06 回答

      • 0

        以下是经过性能优化的使用LINQ从集合中取最后N个元素的扩展方法:

        调用示例:

        Rector的个人主页

        Rector

        2021-11-06 回答

        我来回答