Constantes
Em Dart, você pode criar constantes usando as palavras-chave final
ou const
. Ambas são usadas para criar variáveis imutáveis, o que significa que seus valores não podem ser alterados depois de atribuídos. Aqui estão as diferenças entre final
e const
:
1. Usando final
:
- Uma variável
final
pode ser atribuída apenas uma vez. - O valor de uma variável
final
pode ser calculado em tempo de execução.
Exemplo:
final String nome = 'Dart';
final int idade = calculaIdade();
int calculaIdade() {
// Lógica para calcular a idade
return 30;
}
2. Usando const
:
- Uma variável
const
é uma constante em tempo de compilação. - O valor de uma variável
const
deve ser conhecido em tempo de compilação.
Exemplo:
const double pi = 3.14159;
const String saudacao = 'Olá, Mundo!';
Observações Importantes:
- Você pode usar
const
para criar variáveis constantes de tipos numéricos, strings, booleans e expressões aritméticas/lógicas constantes. - Você também pode usar
const
para criar objetos de classes que possuem um construtor constante. Nesse caso, a classe deve ter um construtor constante e todos os campos da classe devem serfinal
.
Exemplo de objeto constante:
class Ponto {
final int x;
final int y;
const Ponto(this.x, this.y);
}
void main() {
const pontoFixo = Ponto(2, 3); // Objeto Ponto constante
}
Usar constantes em seu código pode ajudar a otimizar o desempenho e garantir que os valores não sejam acidentalmente modificados. Certifique-se de escolher final
ou const
com base na natureza da variável que você está declarando.