Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C#

Phương thức SkipLast() trong C# LINQ

SkipLast() (từ .NET 6+) bỏ qua N phần tử cuối cùng của chuỗi, trả về các phần tử còn lại. Thường dùng sau khi sắp xếp để loại bỏ các giá trị cực đại.

Ví dụ minh họa

Mảng điểm:

int[] marks = { 45, 88, 50, 90, 95, 85 };

Sắp xếp giảm dần, bỏ qua 2 phần tử cuối (điểm thấp nhất):

IEnumerable<int> selMarks = marks.AsQueryable()
    .OrderByDescending(s => s)
    .SkipLast(2);

Mã nguồn hoàn chỉnh

using System;
using System.Linq;
using System.Collections.Generic;

public class Demo
{
    public static void Main()
    {
        int[] marks = { 45, 88, 50, 90, 95, 85 };
        IEnumerable<int> selMarks = marks.AsQueryable()
            .OrderByDescending(s => s)
            .SkipLast(2);

        Console.WriteLine("Đã bỏ qua 2 học sinh cuối...");
        foreach (int res in selMarks)
            Console.WriteLine(res);
    }
}

Kết quả đầu ra

Đã bỏ qua 2 học sinh cuối...
95
90
88
85

Lưu ý: Cần .NET 6+. Phiên bản cũ dùng Take(count - n) sau khi biết số lượng phần tử.