Objetivos
Tipos de dados primitivos e outros
A linguagem Java possui os tipos de dados primitivos, ou básicos, para armazenar números inteiros,
racionais, caracteres, cadeia de caracteres, vetores, matrizes, e constantes.
O uso desses tipos de dados em variáveis e constantes serão visto em
Java Básico: Variáves e Constantes.
Os tipos de dados abaixo serão vistos de forma sucinta. Alguns possuem seções específicas em
que estudamos um pouco mais afundo e serão vistos ao longo de exemplos no tutorial.
Além dos tipos primitivos, a biblioteca nativa da linguagem possui também uma vasta
lista de classes nativas que nos ajudam no desenvolvimento de programas. E serão vistos
em futuras atualizações.
Tipos numéricos primitivos
Para manipular dados númericos, a linguagem Java fornece os tipos primitivos abaixo:
Tipo |
Uso |
Exemplo |
Seção |
int |
Númerico decimais(base 10) |
10, -10 |
- |
float |
Numéros racionais |
1.99, -1.99 |
- |
double |
Números racionais |
1.99, -1.99 |
- |
char |
caracteres e inteiros |
0,'A', -128, 255 |
- |
Os tipos de dados float e double, também são chamados de ponto-flutuante. A diferença
entre ambos está ligado a faixa de dados e precisão de casas decimais.
Esse tipos de dados possuem suas classes Wrappers que nos fornecem métodos para manipulação
dos dados.
Os tipos de dados derivados, são tipos de dados compostos em outros tipos de dados. A linguagem
Java fornece os seguintes tipos de dados:
Tipo |
Uso |
Exemplo |
Seção |
Vetor(Array) |
variáveis |
1,2,3,... |
Visitar |
Matriz(Array 2d) |
matrizes |
- |
Visitar |
String |
Textos |
"um texto" |
Visitar |
Enum |
Constantes |
0,1,2,3 |
Visitar |
Vetor/Matriz:
Os tipos Vetor/Matriz são apelidos para variáveis armazenadas de forma justaposta. Os termos vetor e
matriz não são palavras reconhecidas pela linguagem Java sendo apelidos.
String:
O tipo String armazenam caracteres(char) de forma justaposta.
Enum:
O tipo Enum é composto uma ou mais constantes com valores associados.
A linguagem Java não possui suporte aos tipos de dados struct e union suportados
pelas linguagens C/C++ e Go.
Tipos Numéricos
Os tipos de dados númericos em Java compreendem os tipos int, float e double. O primeiro armazena
números com base 10 e os dois últimos armazenam dados de ponto-flutante(casas decimais).
O tipo int é utilizado para armazenar números inteiros positivos e negativos. Possuem um tamanho
de 4 bytes em memória e armazena dados no intervalo entre -2.147.483.648 e 2.147.483.647.
Sintaxe
int
Exemplo 1
0,1,10,-10
O tipo int também aceita que um valor hexadecimal ou octal sejam atribuídos.
Utiliza-se 0x para indicar que um número é hexadecimal e "0" para indicar octal:
Exemplo 2
016, 0xff
O tipo char é utilizado para armazenar caracteres e possuem um tamanho de 2 byte em memória.
Uma sequência de chars formam uma string.
Quando um caracter imprimível é utilizado como valor de atribuição, o mesmo deve estar contido
entre (').
Sintaxe
char
Exemplo 3
'a','Z'
O tipo char também aceita que um valor hexadecimal seja atribuído. Utiliza-se
0x para indicar que um número é hexadecimal:
Exemplo 4
017, 0xf0
O tipo double é utilizado para armazenar números(Ponto flutuante) positivos e negativos de
com casas decimais. Possuem um tamanho de 8 bytes em memória e armazena dados entre
1.7E-308 até 1.7E+308.
Sintaxe
double
Exemplo 5
12.123456
O tipo float é semelhante ao double, armazena números positivos e negativos
de com casas decimais. Possuem um tamanho de 4 bytes em memória e armazenam dados
entre 1.175494e-38 e 3.402823e+38.
Sintaxe
float
Exemplo 6
2.500000
Tanto o tipo float quanto o double são utilizados para armazenar números com
casas decimais.
A principal diferença é o tamanho em bytes desses dois tipos que proporcionam mais ou
menos precisão de seus valores de acordo com os tipos. Abaixo uma pequena tabela básica
comparativa.
float |
double |
tamanho: 4 bytes |
tamanho: 8 bytes |
7 dígitos de precisão |
15 dígitos de precisão |
Suporta 7 dígitos |
Suporta 15 dígitos |
Tipo Boolean
O tipo booleano trabalha com valores true e false. Esses podem ser utilizados
nas tomadas de decisão, por exemplo.
Sintaxe: declaração
boolean
Exemplo: conteúdo
true, false
Para a linguagem Java, o tipo de dado String é uma cadeia de caracteres justapostos
como pode ser vista uma abstração abaixo.
0 |
1 |
2 |
3 |
4 |
5 |
's' |
't' |
'r' |
'i' |
'n' |
'g' |
Sintaxe: declaração
String
Exemplo: conteúdo
"uma string em java"
Em Java, uma string é mutável o que significa que podemos alterar seus caracteres após a atribuição.
Mais informações sobre string pode ser visto em Strings.
O tipo enum é utilizado para criar constantes em cada membro de sua composição possui um valor
inteiro associado a cada membro.
Exemplo
enum nome_enum
{
nome_membro1, //0
nome_membro2, //1
nome_membroN; //2
}
Para mais informações sobre o tipo de dado enum pode ser visto em sua seção
Java > Tipos Derivados: Enum.
Vetor e matriz são tipos de dados derivados que armazenam dados de forma sequencial em memória.
Esses tipos de dados já foram visto em
Tutorial C: Vetor e Matriz
sendo a leitura recomendada.
Na linguagem Java, assim como em outras linguagens, podemos criar vetores a partir dos tipos de
dados estudados primitivos ou objetos. Podemos enxergar um vetor como um local para armazenar
várias variáveis de forma sequencial.
Tab. 1: Vetor de int
0 |
1 |
2 |
3 |
4 |
5 |
(...) |
1 |
10 |
-100 |
0 |
2 |
- |
- |
Vetor e Matriz não são palavras reconhecidas pela linguagem Java, sendo apenas apelidos para o
termo array e array 2d.
Os comandos de repetição como for, while, do-while e foreach são
utilizados para percorrer o conteúdo de um vetor. Esses comandos podem ser vistos em
Java Básico: Comandos
Mais informações sobre Vetor podem ser vistas em sua seção
Java > Tipos Derivados: Vetor.
Uma matriz é um vetor de duas dimensões. Sendo assim, seus elementos são armazenados de
forma sequencia, porém o acesso a esses elementos é feito utilizando suas linhas e colunas.
Uma matriz com as dimensões 3x3 pode ser representada na forma abaixo:
Tab. 2: Matriz de int
L/C |
0 |
1 |
2 |
0 |
10 |
20 |
30 |
1 |
40 |
50 |
60 |
2 |
70 |
80 |
90 |
Os comando de repetição como for, while e do-while são utilizados para percorrer o
conteúdo de uma matriz. O tipo de dado Ponteiro pode ser utilizado para auxiliar na iteração
desse tipo de dado. Esses comandos podem ser vistos em Java:Comandos
Mais informações sobre Matriz pode ser vista em sua seção Matriz.
Por ser linguagem orientada a objeto, Java fornece vários pacotes(packages) que contém
classes com funcionalidades prontas. Essas classes, quando instancidas, temos os objetos
que são tipos de dados mais complexos quem contem atributos e métodos.
Abaixo, uma pequena lista das classes nativas disponíveis na linguagem Java:
- java.lang.Boolean
- java.lang.Float
- java.lang.Interger
- java.lang.String
- java.lang.Byte
- java.lang.Math
- java.lang.Exception
- java.lang.StringBuilder
- java.lang.Process
- java.lang.Thread
- java.util.Arrays
- java.util.Currency
- java.util.Locale
Em Java Básico: Conversão pode ser visto o uso
de algumas das classes acima para a conversão de dados.
Nesta parte serão vistos os tipos de dados ponteiro e reference além das palavras reservadas null,
void e outros. Mais tipos serão adicionados em futuras atualizações.
A linguagem Java possui um a palavra reservada null para representar o tipo de dado nulo.
Utilizado nos tipos de dados referênciados, como objetos, para informar que o recurso não é mais
utilizado, ou não iniciado, tendo seus recurso de memória liberados.
Sintaxe
nome_variavel = null;
Exemplo 9
instancia_objeto = null;
O tipo void, em parte, é um tipo de dado e em outra parte não. Podemos utilizar void para
informar que métodos não possuem retorno. O void não pode ser utilizado para declarar
variáveis e constantes.
Sintaxe
public void nome_metodo(lista_parametros)
{
/*corpo omitido*/
}
O assunto método pode ser conferido
em Java > POO: Métodos.
Histórico de atualizações
- 22/07/2025 - revisão 4 - Correçao em links 'Objetivos'; Remoçao de exemplos Matriz/Vetor; Ajustes pontuais
- 23/09/2024 - revisão 3 - Remoção de info. octal para 'char', trecho errado sobre 'boolean'; ajustes gramaticais e outros
- 02/09/2024 - revisão 2 - Correção em link de objeto: tipo enum,bool
- 06/02/2024 - revisão 1 - correção em navegação, tipo char e erros gramaticais
- 04/09/2023 - versão inicial
Os cursos oferecidos nesta página são cursos fornecidos por parceiros. Ao comprar um curso clicando
em seu banner, você está ajudando a manter o projeto TutorialDev vivo. Os sites dos cursos parceiros utilizam cookies.