Alguns autores consideram os tipos de dados primitivos como sendo tipos de dados simples, ou seja, aqueles tipos de dados cujos valores são considerados indivisíveis. Apesar de existirem divergências no que diz respeito a essa afirmação, em relação à dimensão que se efetua a devida análise, a mesma é considerada verdadeira para a maioria das linguagens de programação, principalmente, no que se refere à visão inicial que a maioria dos programadores tem das referidas linguagens.

Abaixo, uma tabela com a representação dos valores permitidos:

Category Types MSB Size (bits) Minimum Value Maximum Value Precision Example
Integer byte signed 8 -128 127 From +127 to -128 byte b = 65;
char unsigned 16 0 216-1 All Unicode characters char c = 'A';char c = 65;
short signed 16 -215 215-1 From +32,767 to -32,768 short s = 65;
int signed 32 -231 231-1 From +2,147,483,647 to -2,147,483,648 int i = 65;
long signed 64 -263 263-1 From +9,223,372,036,854,775,807 to -9,223,372,036,854,775,808 long l = 65L;
Floating-point float N/A 32 2-149 (2-2-23)·2127 From 3.402,823,5 E+38 to 1.4 E-45 float f = 65f;
double N/A 64 2-1074 (2-2-52)·21023 From 1.797,693,134,862,315,7 E+308 to 4.9 E-324 double d = 65.55;
Other boolean N/A 1 -- -- false, true boolean b = true;
void -- -- -- -- -- --

O tipo “void” não é considerado um tipo de dado primitivo na linguagem Java. Além disso, os tipos de dados “Floating-point” são definidos pela IEEE 754-1985 que estabelece a forma de representação e a forma de interpretação para os referidos tipos primitivos float e double. Um ponto importante a se ressaltar é que tal norma, IEEE 754, atualmente é utilizada pela absoluta maioria das linguagens de programação comercialmente disponíveis, além de também ser utilizadas por diversos tipos diferentes de hardware, como por exemplo a FPU (floating-point unit) presente nos processadores modernos.

Copyright © 2016 AIEC.