Variáveis e Tipos de Dados em Java – Guia Completo com Exemplos
O que é uma Variável em Java?
Uma variável é uma localização de memória nomeada que armazena dados durante a execução de um programa Java. Toda variável recebe um tipo de dado que especifica o tipo de valor que pode armazenar e a quantidade de memória necessária.
Variáveis Java são agrupadas em três categorias principais:
- Variáveis locais – declaradas dentro de um método ou bloco.
- Variáveis de instância – declaradas em uma classe mas fora de métodos; pertencem a objetos individuais.
- Variáveis estáticas – declaradas com a palavra-chave
static; pertencem à própria classe e são inicializadas uma vez quando o programa inicia.
Usando Variáveis: Declaração & Inicialização
Para trabalhar com uma variável, você deve:
- Declará-la especificando seu tipo e nome.
- Inicializá-la atribuindo um valor.
Declaração de Variável
Ao declarar uma variável, você fornece seu tipo e um nome único.

Exemplos de declaração válida:
int a, b, c; float pi; double d; char a;
Inicialização de Variável
Inicialização atribui um valor inicial a uma variável.

Exemplos de inicialização válida:
pi = 3.14f; d = 20.22d; a = 'v';
Você pode combinar declaração e inicialização em uma única instrução:

Exemplo:
int a = 2, b = 4, c = 6; float pi = 3.14f; double d = 20.22d; char a = 'v';
Tipos de Variáveis
Java distingue três tipos de variáveis:
- Variáveis Locais
- Variáveis de Instância
- Variáveis Estáticas
1) Variáveis Locais
Declaradas dentro de um método ou bloco, existem apenas durante a execução daquele método.
2) Variáveis de Instância
Definidas sem a palavra-chave static, estão vinculadas a objetos individuais de uma classe.
3) Variáveis Estáticas
Inicializadas uma vez no início do programa, antes de qualquer variável de instância. Pertencem à classe em vez de qualquer instância.
Exemplo: Tipos de Variáveis em Java
class Guru99 {
static int a = 1; // variável estática
int data = 99; // variável de instância
void metodo() {
int b = 90; // variável local
}
}
Tipos de Dados em Java
Os tipos de dados de Java são divididos em duas categorias:
- Tipos primitivos – tipos embutidos como int, char, boolean e float.
- Tipos não-primitivos – classes, arrays, interfaces e outros objetos.

Tipos de Dados Primitivos
Java fornece oito tipos primitivos, cada um com tamanho fixo e valor padrão:
- Tipos inteiros –
byte(1 byte),short(2 bytes),int(4 bytes),long(8 bytes) - Tipos de ponto flutuante –
float(4 bytes),double(8 bytes) - Tipo textual –
char(2 bytes, Unicode) - Tipo lógico –
boolean(1 bit,trueoufalse)
| Tipo de Dado | Valor Padrão | Tamanho |
|---|---|---|
| byte | 0 | 1 byte |
| short | 0 | 2 bytes |
| int | 0 | 4 bytes |
| long | 0L | 8 bytes |
| float | 0.0f | 4 bytes |
| double | 0.0d | 8 bytes |
| boolean | false | 1 bit |
| char | '\u0000' | 2 bytes |
Pontos-Chave
- Todos os tipos numéricos são signed (podem representar valores positivos e negativos).
- Tamanhos de tipos de dados são consistentes entre plataformas devido à Java Language Specification.
- O
chardo Java usa 2 bytes porque armazena caracteres Unicode, permitindo suporte completo a internacionalização.
Conversão de Tipos e Casting
Java permite valores de um tipo serem atribuídos a variáveis de outro tipo através de dois mecanismos:
- Conversão Implícita (Widening) – atribuir tipo menor a tipo maior (ex:
intparalong). Acontece automaticamente. - Casting Explícito (Narrowing) – atribuir tipo maior a tipo menor (ex:
doubleparaint). O programador deve fazer cast explicitamente; caso contrário, o compilador reporta erro para prevenir perda acidental de dados.
Exemplo: Demonstrando Type Casting
Passo 1: Copie o seguinte código em um editor.
class Demo {
public static void main(String[] args) {
byte x;
int a = 270;
double b = 128.128;
System.out.println("int convertido para byte");
x = (byte) a;
System.out.println("a e x " + a + " " + x);
System.out.println("double convertido para int");
a = (int) b;
System.out.println("b e a " + b + " " + a);
System.out.println("\ndouble convertido para byte");
x = (byte) b;
System.out.println("b e x " + b + " " + x);
}
}
Passo 2: Salve, compile e execute o código.
Saída:
int convertido para byte a e x 270 14 double convertido para int b e a 128.128 128 double convertido para byte b e x 128.128 -128
Java
- Domine Variáveis e Tipos de Dados Primitivos em C#: Guia Completo
- Variáveis, Constantes e Literais em C: Um Guia Completo
- Variáveis e Literais em Java: Guia Completo
- Tipos de Dados Primitivos do Java: Guia Completo com Exemplos
- Operadores em C++ Explicados: Tipos, Exemplos e Programas Práticos
- Entendendo Java String.charAt(): Sintaxe, Tipo de Retorno, Exceções e Exemplo Prático
- Dominando Java String.endsWith(): Como Verificar Sufixos de String com Exemplos
- Lendo Arquivos em Java com BufferedReader – Guia Prático com Exemplos
- Entendendo Tipos de Variáveis Java: Um Guia Abrangente
- Tipos de Variáveis Python: Entender e Usar Tipos de Dados