Novidades do .NET 6: melhorias em LINQ - Index e Ranges
Todos que acompanham este blog sabem que venho produzindo regularmente conteúdos sobre as inúmeras novidades do .NET 6, sendo que em várias ocasiões já abordei diversas melhorias nesta versão envolvendo o uso de LINQ. Diversas dessas funcionalidades foram inclusive listadas no post:
.NET 6 - Guia de Referência: artigos, vídeos e exemplos de utilização
Em um artigo no ano de 2018 sobre também abordei a utilização de Index e Ranges com arrays, uma nova novidade que integra o C# 8.0:
Novidades do C# 8.0: como habilitar, Ranges e Indices
Este tipo de capacidade também foi incorporado para uso com os métodos Take e ElementAt de LINQ, facilitando assim a obtenção de partes de uma coleção por meio de parâmetros que representam intervalos ou de elementos em uma posição específica (penúltimo, antepenúltimo…). É o que demonstra o exemplo a seguir, com várias possibilidades de utilização de Index e Ranges:
O resultado da execução deste código pode ser observado na seguinte imagem:
Este exemplo foi disponibilizado como um repositório no GitHub:
https://github.com/renatogroffe/DotNet6_Preview6-LINQ-Index-Range_ConsoleApp