Tipos primitivos en java

En la versión de 32 bits, el rango representable se calcula pensando en un bit de signo, una mantisa de 23 bits y un exponente de 8 bits con valores comprendidos entre -126 y 127.

En la versión de 32 bits, el rango representable se calcula pensando en un bit de signo, una mantisa de 23 bits y un exponente de 8 bits con valores comprendidos entre -126 y 127.

Además, el estándar prevé la representación de dos valores para cero (de derecha a izquierda) dos para infinito (positivo y negativo), y de valores NaN (no es un número) para utilizar, por ejemplo, como resultados de operaciones imposibles (por ejemplo, divisiones por cero).

Tipo Cantidad de Memoria Información representada Valor por defecto
byte 8 bits Variable con signo (con representación "two’s complement", complemento a dos) y representa valores en un rango [-128 y 127] (extremos incluidos) 0
short 16 bits Números enteros (con signo) en un rango [-32,768, 32,767] 0
int 32 bits Números enteros (por defecto con signo, firmado) en un rango [-231, 231-1]. Con Java 8 se introdujo la posibilidad de utilizar los int para representar cantidades sin firmar que podrán tener un rango [0, 232-1] (gracias a métodos estáticos introducidos en las clases Integer y Long) 0
long 64 bits Números enteros (por defecto con signo, firmado) en un rango [-263, 263-1]. Al igual que con los enteros en Java 8, existe la posibilidad de utilizarlos como cantidades sin firmar con un rango (positivo) que llega hasta 264-1. 0L
float 32 bits Números en punto flotante en precisión simple según la especificación IEEE 754, utilizando la representación signo, mantisa y exponente.
(-1)signo * mantisa * 2exponente
0.0f
double 64 bits Números en punto flotante en doble precisión según la especificación IEEE 754. La precisión con la que se representan los números aumenta en virtud del aumento del número de bits utilizados. 0.0d
boolean No especificado, pero sería suficiente un solo bit Sirve para representar solamente 2 valores: verdadero o falso (verdadero o falso). falso
char 16 bits Se utiliza para la memorización de caracteres del conjunto de caracteres Unicode) en el rango ['', '￿'] (en hexadecimal) o equivalentemente [0,65535].

Ejercicio

/* declaro tres tipos de variables diferentes para probar su funcionamiento
*
* ejecuto en segunda instancia el siguiente ejercicio para probar el funcionamiento
* del ciclo while
*
* a) imprimo los números de 1 a 10 y
* b) imprimo los números de 1 a 20 y, al llegar a 20, sigo imprimiendo de manera decreciente de 20 a 1
* c) imprimo los números impares entre 1 y 100
* d) imprimo los números de 1 a 100 resaltando los números múltiplos de 25
* e) imprimo los números de 1 a 100 de manera consecutiva en una sola línea resaltando los múltiplos de 100
* f) imprimo los números de 100 a 1 resaltando los múltiplos de 7
*
*
*/

public static void main(String[] args) {

// byte gestiona los números de -128 a +127
// int  char
byte a;
a=-128;
//System.out.println(a);
//hemos probado que el número gestionado por byte
// va de -128 a +127

int b;
b=+2147483647;
// System.out.println(b);

char c;
c=’@’;
int contatore=0;
while(contatore<=1000)
{
System.out.print(contatore + ” “);
System.out.print(c);
contatore++;
}

}
}

 

 

Recursos en línea sobre el tema:

http://www.di-srv.unisa.it/professori/masucci/LPII-0405/slides/Lez03.pdf