Article image
Leandro Barbosa
Leandro Barbosa03/10/2023 11:08
Compartilhe

Tuplas, Operador Ternário e Desconstrução de um Objeto com C#

    Tuplas, Operador Ternário e Desconstrução de um Objeto com C#

    Neste artigo, exploraremos três conceitos importantes em C# que ajudarão você a escrever código mais eficiente e legível: tuplas, operador ternário e desconstrução de objetos. Vamos abordar cada um desses tópicos de forma simples e direta, para que mesmo os iniciantes possam compreendê-los.

    Tuplas

    Uma tupla é uma estrutura de dados que permite combinar vários valores em um único objeto. Elas são úteis quando você precisa retornar mais de um valor de uma função ou armazenar informações relacionadas.

    Forma 1: Declarando uma Tupla com `var`

    var pessoa = (Nome: "João", Idade: 30);
    

    Neste exemplo, criamos uma tupla chamada `pessoa` com dois elementos: `Nome` e `Idade`. Você pode acessar os valores da tupla usando os nomes dos elementos:

    string nome = pessoa.Nome;
    int idade = pessoa.Idade;
    

    Forma 2: Declarando uma Tupla com `ValueTuple`

    (ValueTuple<string, int> pessoa) = ("João", 30);
    

    Essa é outra maneira de criar uma tupla, onde especificamos explicitamente os tipos dos elementos. A desconstrução funciona da mesma forma:

    string nome = pessoa.Item1;
    int idade = pessoa.Item2;
    

    Forma 3: Declarando uma Tupla com `Tuple.Create`

    var pessoa = Tuple.Create("João", 30);
    

    Neste caso, usamos o método `Tuple.Create` para criar uma tupla. Você pode acessar os valores da tupla da seguinte maneira:

    string nome = pessoa.Item1;
    int idade = pessoa.Item2;
    

    Operador Ternário

    O operador ternário é uma forma concisa de expressar uma condição em uma única linha. Ele é frequentemente usado para atribuir um valor a uma variável com base em uma condição.

    Exemplo de Operador Ternário:

    int idade = 18;
    string status = (idade >= 18) ? "Maior de idade" : "Menor de idade";
    

    Neste exemplo, `status` receberá o valor "Maior de idade" se `idade` for maior ou igual a 18, caso contrário, receberá "Menor de idade".

    Desconstrução de um Objeto

    A desconstrução de objetos é uma maneira conveniente de extrair os valores de um objeto diretamente em variáveis individuais. Isso pode ser útil ao lidar com tuplas ou outras estruturas de dados.

    Exemplo de Desconstrução:

    public class Ponto
    {
    public int X { get; }
    public int Y { get; }
    
    public Ponto(int x, int y)
    {
      X = x;
      Y = y;
    }
    
    public void Deconstruct(out int x, out int y)
    {
      x = X;
      y = Y;
    }
    }
    
    var ponto = new Ponto(3, 4);
    var (x, y) = ponto; // Desconstruir o objeto Point
    

    Neste exemplo, criamos uma classe `Ponto` com um método `Deconstruct` que permite a desconstrução do objeto. Isso nos permite extrair os valores `X` e `Y` diretamente em variáveis `x` e `y`.

    Conclusão

    Tuplas, operadores ternários e desconstrução de objetos são ferramentas poderosas em C# que podem tornar seu código mais eficiente e legível. Compreender esses conceitos básicos é fundamental para escrever programas mais claros e concisos.

    À medida que você pratica e explora esses conceitos, você se tornará mais confortável em usá-los em seus projetos. Lembre-se de que a prática é a chave para aprimorar suas habilidades de programação em C#.

    Compartilhe
    Comentários (2)

    LM

    Ligia Marcolino - 13/11/2023 00:36

    Nossa muito bom, para eu que estou começando a ver sobre isso, auxilia e muito.

    MQ

    Milton Quissanga - 03/10/2023 11:55

    Foi boa aula