1.3. Dart Iniciante: Operações Aritméticas e Modificadores de Variáveis

Iremos aprender a realizar operações aritméticas com as variáveis e a torná-las imutáveis com const e final...

1.3. Dart Iniciante: Operações Aritméticas e Modificadores de Variáveis

Primeiro declarar duas variáveis com números tipo double e depois criar outra variável que realizará a soma das anteriores, reparem:

void main(){
  double num1 = 10.0;
  double num2 = 1;

  double result = num1 + num2;
  print(result);
}

No result podemos colocar a expressão num1 + num2 entre parenteses também (num1 + num2) - 10.0;.

Operador Resumido

Podemos realizar a operação da seguinte forma num1 = num1 + 15, porém para resumir esta expressão podemos usar num1 += 15; bem como poderiamos somar o valor declarado num1++; que retornaria o valor apresentado em num1+1 ou num--; que retornaria a subtração de 1 mais o num1.

void main(){
  double num1 = 10.0;

  num1 *= 15; 
  // A multiplicação segue a mesma forma da soma, conforme explicado acima.

  print(num1);
}

Modificadores Const e Final

As variáveis podem ser mutáveis e imutáveis:

void main() {
  String nome = 'Paulo';
  print(nome);
  
  nome = 'Diego';
  print(nome);
}

Perceba que no exemplo acima foi criado uma variável nome que foi alterada posteriormente nome = 'Diego';.

Ocorre que é possível tornar essa variável imutável e isto é considerado uma boa prática, ou seja, se possível declare suas variáveis imutáveis.

Para isso, há os modificadores. 

Modificador final

Ao utilizá-lo, estou dizendo que o valor dessa variável não pode ser mais alterado, pois é um valor final, assim, não se pode alterá-lo, somente lê-lo.

void main() {
  // variável imutável
  final String nome = 'Paulo';
  print(nome);
}

Lembrando que uma variável final não se pode ser delcarada posteriormente:

void main() {
  final String nome;
  
  // irá retornar um erro se eu declará-la posteriormente
  // desse jeito:
  nome = 'Paulo';
}

Sempre deve ser declarada, inicializada, pois, caso contrário, irá retornar um erro.

Assim, não é necessário declarar o tipo de uma variável final, pois se ela não pode ser modificada e sempre tem que ser declarada, então se torna desnecessário declarar seu tipo, pois o Dart irá reconhecê-la, pois ela é única:

void main() {
  // variável imutável não informado o tipo
  final nome = 'Paulo';
  print(nome);
}

Modificador const

É uma constante e, da mesma forma que final, const é imutável.

void main() {
  const String nome = 'Paulo';
  print(nome);
}

Tanto faz o uso de const ou final, você pode usar qualquer tipo. final é mais usada por programadores de outras linguagens, já em javascript const é uma variável final e não existe final.

OBS. const pode ser utilizado para inicialização de classes, porém iremos ver isso mais a frente.

Muito bem, no próximo artigo iremos conhecer os Operadores Lógicos, clique aqui para começar.