Created
February 21, 2024 10:10
-
-
Save renatogroffe/9571f4c24267d4a855d7f349e4daf381 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using ConsoleAppLinqCountBy.Models; | |
using System.Runtime.InteropServices; | |
Console.WriteLine("***** Testes com .NET 9 | Metodo CountBy - LINQ *****"); | |
Console.WriteLine($"Versao do .NET em uso: {RuntimeInformation | |
.FrameworkDescription} - Ambiente: {Environment.MachineName} - Kernel: {Environment | |
.OSVersion.VersionString}"); | |
var localidades = new Localidade[] | |
{ | |
new Localidade { NomeCidade = "Belo Horizonte", SiglaEstado = "MG" }, | |
new Localidade { NomeCidade = "Campinas", SiglaEstado = "SP" }, | |
new Localidade { NomeCidade = "Feira de Santana", SiglaEstado = "BA" }, | |
new Localidade { NomeCidade = "Juiz de Fora", SiglaEstado = "MG" }, | |
new Localidade { NomeCidade = "Niterói", SiglaEstado = "RJ" }, | |
new Localidade { NomeCidade = "Ouro Preto", SiglaEstado = "MG" }, | |
new Localidade { NomeCidade = "Porto Alegre", SiglaEstado = "RS" }, | |
new Localidade { NomeCidade = "Ribeirão Preto", SiglaEstado = "SP" }, | |
new Localidade { NomeCidade = "Rio de Janeiro", SiglaEstado = "RJ" }, | |
new Localidade { NomeCidade = "Salvador", SiglaEstado = "BA" }, | |
new Localidade { NomeCidade = "Santos", SiglaEstado = "SP" }, | |
new Localidade { NomeCidade = "São Paulo", SiglaEstado = "SP" }, | |
new Localidade { NomeCidade = "Uberlândia", SiglaEstado = "MG" }, | |
new Localidade { NomeCidade = "Belém", SiglaEstado = "PA" } | |
}; | |
Console.WriteLine(); | |
Console.WriteLine("Algumas cidades brasileiras:"); | |
foreach (var localidade in localidades) | |
Console.WriteLine($" {localidade.NomeCidade}-{localidade.SiglaEstado}"); | |
IEnumerable<KeyValuePair<string, int>> contagemLocalidades = | |
localidades.Select(estado => estado.SiglaEstado!) | |
.CountBy(siglaEstado => siglaEstado); | |
Console.WriteLine(); | |
Console.WriteLine("Quantidade de cidades encontradas por estado:"); | |
foreach (var estado in contagemLocalidades) | |
Console.WriteLine($" {estado.Key} = {estado.Value}"); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment