Fundamentos

Declarar e Atribuir

Introdução

Até agora, aprendemos que:

  • Uma variável é um espaço na memória do computador que guarda informações.
  • Toda variável possui um tipo de dado, que determina que tipo de informação ela pode armazenar.
  • Existem tipos básicos (números, texto, lógicos) e tipos avançados (objetos, arrays e coleções).

Agora que entendemos o que é uma variável e qual seu tipo, o próximo passo é aprender como criar e definir valores para essas variáveis.

Declaração

É o ato de informar ao computador que uma variável existe e qual é o seu tipo.

  • Pense nisso como reservar a caixa na memória, definindo o tamanho e o tipo de conteúdo que ela poderá armazenar.
  • Na declaração, você ainda não precisa colocar um valor na variável; ela existe, mas está vazia (ou com um valor padrão).

Atribuição

É o ato de colocar um valor dentro da variável.

  • É como colocar algo dentro da caixa que você acabou de reservar.
  • O valor atribuído deve ser compatível com o tipo da variável.
Declaração cria o espaço e atribuição coloca o valor nesse espaço.

Em Java, esses dois conceitos podem ocorrer juntos ou separados. Por exemplo, você pode declarar uma variável e depois atribuir um valor, ou declarar e atribuir ao mesmo tempo.

public class DeclaracaoAtribuicao {
    public static void main(String[] args) {
        int matricula;
        String nome;
        double salario;
        boolean afastado;

        System.out.println("Nenhuma variável declarada teve uma atribuição");
    }
}
Cuidado ao tentar obter ou conferir o valor de uma variável sem atribuição de um valor.
Variable matricula might not have been initialized -> A variável matricula pode não ter sido inicializada.

Reatribuição

É o ato de redefinir o valor de uma variável.

public class DeclaracaoAtribuicao {
    public static void main(String[] args) {
        int numero = 57;

        System.out.println(numero);

        numero = 19;

        System.out.println(numero);

    }
}
Observe que não foi necessário definir o tipo novamente.