0Pricing
C# Academy · Aula

Select, Where, OrderBy, Take/Skip

Filtre com Where, transforme com Select, ordene com OrderBy/ThenBy e pagine com Take/Skip. Encadeamentos simples e legíveis.

Select, Where, OrderBy, Take/Skip é uma aula grátis de C# Academy no CoddyKit. Esta é a aula 2 de 3. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de C# Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de C# Academy inclui 3 aulas no total.

Funções dos operadores

Funções:

  • Where filtra
  • Select transforma
  • OrderBy/ThenBy ordena
  • Take/Skip pagina os resultados

Mantenha as cadeias curtas e fáceis de ler.

Filtragem com Where

Where mantém os itens que satisfazem uma condição (predicado).

using System;
using System.Linq;

public class Program
{
  public static void Main(string[] args)
  {
    int[] nums = new int[] { 1, 2, 3, 4, 5, 6 };

    var evens = nums.Where(n => n % 2 == 0);

    foreach (int n in evens)
    {
      Console.WriteLine(n); // 2 4 6
    }
  }
}

Projeção com Select

Select transforma cada elemento num novo valor (projeção).

using System;
using System.Linq;

public class Program
{
  public static void Main(string[] args)
  {
    string[] words = new string[] { "cat", "lion", "tiger" };

    var lengths = words.Select(w => w.Length); // transform to lengths

    foreach (int len in lengths)
    {
      Console.WriteLine(len); // 3 4 5
    }
  }
}

Ordenação dos resultados

Utilize OrderBy e depois ThenBy para ordenar por várias chaves; adicione a ordenação decrescente quando necessário.

using System;
using System.Linq;

public sealed class City
{
  public string Name;
  public int Population;
  public City(string name, int pop) { Name = name; Population = pop; }
}

public class Program
{
  public static void Main(string[] args)
  {
    City[] cities = new City[]
    {
      new City("Rome", 2873000),
      new City("Oslo", 634000),
      new City("Riga", 605000),
      new City("Rio", 6748000)
    };

    var sorted = cities
      .OrderBy(c => c.Name)             // primary
      .ThenByDescending(c => c.Population); // secondary

    foreach (City c in sorted)
    {
      Console.WriteLine(c.Name + " - " + c.Population);
    }
  }
}

Paginação com Take/Skip

Skip passa à frente dos itens; Take devolve uma quantidade fixa. Em conjunto, implementam a paginação.

using System;
using System.Linq;

public class Program
{
  public static void ShowPage(int[] data, int page, int pageSize)
  {
    var pageItems = data
      .OrderBy(x => x)           // define a consistent order
      .Skip((page - 1) * pageSize)
      .Take(pageSize);

    Console.WriteLine("Page " + page + ":");
    foreach (int x in pageItems) Console.WriteLine(x);
  }

  public static void Main(string[] args)
  {
    int[] nums = new int[] { 9, 1, 5, 2, 7, 3, 8, 6, 4 };
    ShowPage(nums, 1, 3); // 1 2 3
    ShowPage(nums, 2, 3); // 4 5 6
  }
}

Dicas para encadear

Dicas:

  • Filtre cedo com Where.
  • Faça a projeção mais tarde com Select (depois da filtragem/ordenação).
  • Utilize OrderBy antes de Take/Skip para obter resultados previsíveis.
  • Mantenha cada etapa pequena e atribua-lhe um nome claro.

Nome do operador de filtragem

Verificação rápida: qual operador do LINQ filtra uma sequência por um predicado?

Recapitulação

Recapitulação: utilize Where para filtrar, Select para projetar, OrderBy/ThenBy para ordenar e Take/Skip para paginar. Mantenha os fluxos pequenos e fáceis de ler.

Perguntas Frequentes

A aula “Select, Where, OrderBy, Take/Skip” é grátis?

Sim — o texto completo de “Select, Where, OrderBy, Take/Skip” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de C# Academy, atualize para CoddyKit PRO. O curso de C# Academy inclui 3 aulas no total.

O que vou aprender em “Select, Where, OrderBy, Take/Skip”?

Filtre com Where, transforme com Select, ordene com OrderBy/ThenBy e pagine com Take/Skip. Encadeamentos simples e legíveis. Você pratica C# Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar C# Academy?

Nenhuma experiência prévia é necessária. C# Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 3.

Quanto tempo leva a aula “Select, Where, OrderBy, Take/Skip”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de C# Academy?

Sim. Cada aula de C# Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Esteiras de IEnumerable ; execução adiada
  2. Select, Where, OrderBy, Take/Skip
  3. Sintaxe de consulta versus sintaxe de método
← Voltar para C# Academy