Resumo : neste tutorial, você aprenderá como usar o TakeLast()
método LINQ para retornar uma nova coleção que contém os últimos N elementos de uma sequência.
Introdução ao método LINQ TakeLast()
O método LINQ TakeLast()
permite obter os últimos elementos de contagem de uma sequência:
IEnumerable<TSource> TakeLast<TSource> (
this IEnumerable<TSource> source,
int count
);
Linguagem de código: C# ( cs )
Nesta sintaxe:
source
é a sequência de entrada.count
é o número de elementos a serem retirados do final da sequência.
O TakeLast()
método retorna uma nova coleção enumerável IEnumerable<TSource>
que contém os últimos elementos de contagem da sequência de origem.
Se quiser pegar N elementos do início de uma sequência, você pode usar o método Take() .
Exemplos do método LINQ TakeLast()
Vejamos alguns exemplos de uso do TakeLast()
método LINQ.
1) Usando o método LINQ TakeLast() para filtrar números
O exemplo a seguir usa o TakeLast()
método LINQ para obter os três últimos números de uma matriz:
using static System.Console;
int[] numbers = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
var result = numbers.TakeLast(3);
foreach (var number in result)
{
Console.WriteLine(number);
}
Linguagem de código: C# ( cs )
Saída:
8
9
10
Linguagem de código: C# ( cs )
2) Usando o método LINQ TakeLast() para filtrar strings
O exemplo a seguir ilustra como usar o TakeLast()
método para obter os dois últimos elementos em uma matriz de strings:
using static System.Console;
string[] names = { "Alice", "Bob", "Charlie", "David", "Eve" };
var result = names.TakeLast(2);
foreach (var name in result)
{
WriteLine(name);
}
Linguagem de código: C# ( cs )
Saída:
David
Eve
Linguagem de código: C# ( cs )
3) Usando o método LINQ TakeLast() para filtrar objetos
O exemplo a seguir usa o TakeLast()
método LINQ para obter os três últimos objetos de uma lista de objetos:
using static System.Console;
namespace LINQDemo;
public class Person
{
public required string Name
{
get; set;
}
public int Age
{
get; set;
}
}
public class Program
{
public static void Main(string[] args)
{
var people = new List<Person>
{
new Person { Name = "Alice", Age = 25 },
new Person { Name = "Bob", Age = 26 },
new Person { Name = "Charlie", Age = 30 },
new Person { Name = "William", Age = 22 },
new Person { Name = "Eve", Age = 18 }
};
var result = people.TakeLast(3);
foreach (var person in result)
{
WriteLine($"Name: {person.Name}, Age: {person.Age}");
}
}
}
Linguagem de código: C# ( cs )
Resumo
- Use o
TakeLast()
método LINQ para obter os últimos elementos de contagem de uma sequência.