【问题标题】:How can I get the last 50 elements in a list? [duplicate]如何获取列表中的最后 50 个元素? [复制]
【发布时间】:2018-05-26 20:24:21
【问题描述】:

我有一个清单:

List<BtnCountViews> btnCountViewsList;

BtnCountViews 类如下所示:

public class BtnCountViews
{
    public int DayOfYear { get; set; }
    public int BtnCount { get; set; }
    public int Views { get; set; }
}

数据已按排序顺序添加到列表中。

谁能告诉我如何获得最后 50 个元素?我希望 LINQ 可以做到这一点,但我还没有看到任何关于如何做到这一点的示例。

【问题讨论】:

  • 尝试btnCountViewsList.Skip(Math.Max(0, btnCountViewsList.Count() - n)),其中n属于要检索的最后n个元素。

标签: c# linq


【解决方案1】:

跳过第一个列表的大小减去 50。

        var list = new List<BtnCountViews>();
        for (int i = 0; i < 100; i++)
        {
            list.Add(new BtnCountViews() { BtnCount = i, DayOfYear = i, Views = i });
        }

        var last50 = list.Skip(list.Count - 50).ToList();

【讨论】:

    猜你喜欢
    • 2022-01-01
    • 2010-10-30
    • 2013-06-19
    • 2022-11-15
    • 2011-12-05
    • 1970-01-01
    • 2018-08-25
    • 2018-12-01
    • 1970-01-01
    相关资源
    最近更新 更多