☕ Java

Variáveis e Tipos de Dados — Java

O que é isso e para que serve?

Imagine que você está jogando um jogo de computador. Você tem um inventário — uma mochila onde guarda diferentes itens: uma espada, uma poção de vida, um mapa do tesouro. Na programação, essa "mochila" é chamada de variável. É uma caixinha onde você pode colocar alguma informação e dar um nome a ela.

Para que serve isso? Digamos que você está escrevendo um programa que parabeniza o usuário pelo aniversário. O nome do usuário pode ser diferente — hoje "Maria", amanhã "Pedro". Em vez de reescrever o código toda vez, você cria uma variável nome e escreve o nome desejado uma vez. O próprio programa o substituirá no texto da saudação!

Agora, sobre tipos de dados. Voltemos à mochila. Você não colocaria maçãs no bolso das moedas, nem moedas no bolso do mapa. Em Java, também existem diferentes "bolsos" para diferentes coisas:

  • Números (inteiros e decimais)
  • Palavras e letras (texto)
  • Verdadeiro/Falso (sim ou não)

Java é uma linguagem rigorosa. Ela exige que você diga antecipadamente: "Nesta caixinha só terão números inteiros!" ou "Aqui só tem texto!". Em Python isso não existe — lá você pode colocar qualquer coisa em qualquer lugar. Mas em Java, isso ajuda a evitar erros. Imagine que você colocou água por engano no bolso das moedas — as moedas estragariam. Java não deixa você fazer isso!

Vamos entender passo a passo. Primeiro, aprenderemos a criar variáveis, e depois conheceremos os tipos de dados e para que servem.

Exemplos de código com explicação

Exemplo 1: Primeira variável — olá, mundo!

Vamos começar pelo mais simples. Vamos criar uma variável que armazena texto (palavra ou frase). Em Java, para texto, usamos o tipo String (com letra maiúscula!).

// Declaramos (criamos) uma variável com o nome "saudacao"
// Tipo String — significa que vamos armazenar texto
String saudacao;

// Agora colocamos um valor nela (texto entre aspas)
saudacao = "Olá, mundo!";

// E agora exibimos o conteúdo da variável na tela
System.out.println(saudacao);
// Na tela aparecerá: Olá, mundo!

Explicação para iniciantes:

  • String — é o tipo "string" (texto). Em Python você escreveria apenas saudacao = "Olá, mundo!", mas em Java precisa primeiro dizer qual será o tipo da variável.
  • O ponto e vírgula ; no final de cada comando é como um ponto final. Java não entenderia onde o comando termina sem ele.
  • System.out.println() — comando "imprima e pule para a próxima linha". Como print() em Python.

Podemos combinar a criação e a atribuição em uma única linha:

// Criamos uma variável e já colocamos um valor nela
String nome = "Alice";

System.out.print("Olá, ");
System.out.println(nome);
// Na tela: Olá, Alice

Observe: System.out.print() (sem ln) não pula para a próxima linha, mas continua imprimindo na mesma linha.

Exemplo 2: Números inteiros — contando maçãs

Para números inteiros (sem parte decimal) em Java, existe o tipo int (de integer — número inteiro).

// Declaramos uma variável para a quantidade de maçãs
int macas;

// Colocamos o número 10
macas = 10;

// Podemos fazer matemática!
int peras = 5;          // criamos e já colocamos 5
int total_frutas;       // apenas criamos, por enquanto vazio

// Somamos maçãs e peras
total_frutas = macas + peras;

// Exibimos o resultado
System.out.print("Total de frutas: ");
System.out.println(total_frutas);
// Na tela: Total de frutas: 15

O que é importante lembrar:

  • Nomes de variáveis são escritos juntos ou com sublinhado. Não podem conter espaços.
  • A matemática funciona como na vida real: +, -, * (multiplicar), / (dividir).
  • Em Java, ao contrário do Python, você não pode simplesmente escrever macas = "dez" se a variável foi declarada como int. Java dirá: "Erro! Você prometeu um número, mas está dando texto!"

Vamos tentar calcular quantas maçãs cada um ganhará se dividirmos igualmente entre 3 amigos:

int macas = 10;
int amigos = 3;

// Dividimos as maçãs pelos amigos (atenção! inteiro dividido por inteiro resulta em inteiro)
int cada_um = macas / amigos;

System.out.println("Cada amigo ganhará " + cada_um + " maçãs");
// Na tela: Cada amigo ganhará 3 maçãs

O truque: 10 dividido por 3 é 3.333..., mas int descarta a parte decimal! Java não arredonda, apenas corta a "cauda". Se precisar de divisão exata, use double (veja o próximo exemplo).

Exemplo 3: Números decimais — dinheiro e altura

Para números com parte decimal (por exemplo, 3.14 ou 2.5) em Java, existem os tipos double e float. Usaremos double — ele é mais preciso.

// Preço da pizza — 450 reais e 50 centavos
double preco_pizza = 450.50;

// Quantas pizzas compraremos?
int quantidade = 3;

// Calculamos o custo total
double custo_total = preco_pizza * quantidade;

System.out.println("Custo total: " + custo_total + " reais");
// Na tela: Custo total: 1351.5 reais

Importante! Em Java, a parte decimal é separada por ponto, não por vírgula. 450,50 causará um erro. Lembre-se: o ponto é a "vírgula decimal" para o computador.

Outro exemplo — calculando a média escolar:

double matematica = 4.5;
double portugues = 3.0;
double fisica = 5.0;

// Somamos e dividimos pela quantidade de matérias
double media = (matematica + portugues + fisica) / 3;

System.out.println("Média: " + media);
// Na tela: Média: 4.166666666666667

Viu quantos dígitos após a vírgula? Isso é normal. Se precisar mostrar apenas d