Menu
Coddy logo textTech

Usando Enums em variáveis

Parte da seção Lógica & Fluxo do Journey de Dart da Coddy — lição 60 de 65.

Agora que você sabe como definir enums, vamos aprender como realmente usá-los em seus programas. Depois de criar um enum, você pode declarar variáveis desse tipo enum e atribuir valores específicos a elas.

Para declarar uma variável de um tipo enum, você especifica o nome do enum seguido pelo nome da variável, assim como em qualquer outro tipo de dado:

Weather todayWeather = Weather.sunny;

Observe como você acessa valores de enum usando a notação de ponto: Weather.sunny. Isso informa ao Dart que você deseja o valor sunny do enum Weather.

Você pode alterar o valor da variável para qualquer outro valor de enum válido:

todayWeather = Weather.rainy;
todayWeather = Weather.cloudy;

A beleza de usar variáveis enum é que o Dart garante que você só possa atribuir valores enum válidos. Você não pode atribuir acidentalmente "stormy" ou qualquer outro valor inválido a uma variável Weather, o que evita erros de programação comuns e torna seu código mais confiável.

challenge icon

Desafio

Fácil

Crie um programa que gerencie um sistema simples de rastreamento de tarefas usando enums e variáveis. Sua tarefa é:

  1. Definir um enum chamado TaskStatus com os seguintes valores: todo, inProgress, testing, completed, e cancelled
  2. Criar uma variável chamada task1Status do tipo TaskStatus e atribuir a ela o valor TaskStatus.todo
  3. Criar uma variável chamada task2Status do tipo TaskStatus e atribuir a ela o valor TaskStatus.inProgress
  4. Criar uma variável chamada task3Status do tipo TaskStatus e atribuir a ela o valor TaskStatus.completed
  5. Imprimir o status inicial de todas as tarefas com o formato exato: Task 1 status: TaskStatus.todo
  6. Imprimir o status inicial da tarefa 2 com o formato exato: Task 2 status: TaskStatus.inProgress
  7. Imprimir o status inicial da tarefa 3 com o formato exato: Task 3 status: TaskStatus.completed
  8. Atualizar task1Status para TaskStatus.inProgress
  9. Atualizar task2Status para TaskStatus.testing
  10. Imprimir o status atualizado da tarefa 1 com o formato exato: Updated Task 1 status: TaskStatus.inProgress
  11. Imprimir o status atualizado da tarefa 2 com o formato axato: Updated Task 2 status: TaskStatus.testing
  12. Imprimir o status final da tarefa 3 com o formato exato: Final Task 3 status: TaskStatus.completed

Seu programa deve demonstrar a definição adequada de enum usando a palavra-chave enum, declaração de variáveis com tipos enum, acesso a valores de enum usando a notação de ponto e atualização de variáveis enum. Certifique-se de seguir as convenções de nomenclatura do Dart, onde o nome do enum começa com uma letra maiúscula e os valores do enum são escritos em letras minúsculas.

Folha de consulta

Para declarar uma variável de um tipo enum, especifique o nome do enum seguido pelo nome da variável:

Weather todayWeather = Weather.sunny;

Acesse os valores do enum usando a notação de ponto com o formato EnumName.value:

todayWeather = Weather.rainy;
todayWeather = Weather.cloudy;

O Dart garante que você só possa atribuir valores de enum válidos a variáveis de enum, evitando atribuições inválidas e tornando o código mais confiável.

Experimente você mesmo

import 'dart:io';

// TODO: Defina seu enum TaskStatus aqui

void main() {
  // TODO: Escreva seu código aqui
  // 1. Crie a variável task1Status e atribua TaskStatus.todo
  // 2. Crie a variável task2Status e atribua TaskStatus.inProgress  
  // 3. Crie a variável task3Status e atribua TaskStatus.completed
  // 4. Imprima o status inicial de todas as tarefas
  // 5. Atualize os status das tarefas conforme necessário
  // 6. Imprima os status atualizados e finais
  
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Lógica & Fluxo