Tipos de Datos
Tipos de Datos
https://utds.mrooms.net/mod/book/tool/print/index.php?id=222967 1/24
31/7/2018 1.2. Tipos de datos.
Tabla de contenidos
1. Identificadores.
2. Los ocho tipos de datos primitivos de Java.
3. Asignando variables.
4. Tipo de datos entero.
5. Tipo de datos de punto flotante.
6. Tipo de datos boolean.
7. Tipo de datos char.
8. Cadenas.
9. Tipo de datos primitivos versus referencias.
10. Constantes.
11. Breve ampliación sobre cadenas.
12. Breve explicación sobre la clase StringBuilder.
13. Breve explicación sobre la clase StringBuffer.
14. Tipos Enum.
https://utds.mrooms.net/mod/book/tool/print/index.php?id=222967 2/24
31/7/2018 1.2. Tipos de datos.
1. Identificadores.
Los identificadores son las palabras en el código Java que usted escoge y que no son parte del lenguaje. Por
ejemplo, en una clase de nombre ejemplo1, la palabra ejemplo1 no es una palabra reservada de Java ni tiene
ningún significado especial en Java. Se le tenía que colocar un nombre a la clase y ejemplo1 fue la palabra
seleccionada para identificar a la clase.
En Java necesitará identificar muchos elementos en su código, incluyendo nombres de clases, campos,
variables y nombres de paquete. Los nombres que seleccione son llamados identificadores y deben cumplir las
reglas siguientes:
1. Un identificador no puede ser una palabra reservada deJava, ni true, false o null.
2. Un identificador puede estar formado por letras, dígitos, guion bajoo signo de dólar.
3. Un identificador debe empezar con una letra, un guion bajo o un signo de dólar
https://utds.mrooms.net/mod/book/tool/print/index.php?id=222967 3/24
31/7/2018 1.2. Tipos de datos.
reservada
https://docs.oracle.com/javase/tutorial/java/nutsandbolts/variables.html
https://utds.mrooms.net/mod/book/tool/print/index.php?id=222967 4/24
31/7/2018 1.2. Tipos de datos.
Tipo de
Tamaño Valor mínimo Valor máximo
datos
byte 8 bits -128 127
short 16 bits –32,768 32,767
int 32 bits –2,147,483,648 2,147,483,647
long 64 bits –9,223,372,036,854,775,808 9,223,372,036,854,775,807
float 32 bits ±1.40239846E-45 ±3.40282347E+8
±4.94065645841246544E-
double 64 bits ±1.79769313486231570E+308
324
char 16 bits \u0000 \uFFFF
boolean n/d true o false ----
https://utds.mrooms.net/mod/book/tool/print/index.php?id=222967 5/24
31/7/2018 1.2. Tipos de datos.
3. Asignando variables.
El término variable es usado porque los datos que almacena pueden variar (cambiar). En Java se usa el
operador de asignación igual (=) para asignar un valor particular a una variable. Por ejemplo, las siguientes
sentencias declaran una variable de tipo entero llamada x1 y le asignan el valor de 12.
int x1;
x1 = 12;
Observe que a una variable se le puede asignar un valor mientras es declarada. Las anteriores dos sentencias
pudieron haber sido reemplazadas con la siguiente línea de código única:
int x1 = 12;
Java es estricto para permitir asignar a las variables solamente los valores que coincidan con el tipo de datos
de la variable. Si x1 es un int no se le puede asignar otro tipo de dato a menos que se use el
operador cast. Por ejemplo, la siguiente sentencia declara x1 de tipo int y luego intenta asignarle un valor de
punto flotante.
int x1;
double d1 = 3.5;
https://utds.mrooms.net/mod/book/tool/print/index.php?id=222967 6/24
31/7/2018 1.2. Tipos de datos.
convertir un número de punto flotante a un tipo de datos entero causa que la parte decimal del número sea
truncada (no redondeada).
https://utds.mrooms.net/mod/book/tool/print/index.php?id=222967 7/24
31/7/2018 1.2. Tipos de datos.
De los ocho tipos primitivos de datos, cuatro de ellos son tipos enteros que se diferencian solamente por su
tamaño: byte, short, int y long. . Los cuatro están signados, lo que significa que almacenan tanto números
positivos como negativos. Observe además que los literales enteros son tratados como int por defecto. Estudie
el siguiente programa y trate de determinar cuál será su salida.
short a, b, c;
c = 21;
b = 9;
// ¿Por qué convertir a short si las tres variables ya son de ese tipo?
a = (short) (b + c);
System.out.println("a es " + a);
https://utds.mrooms.net/mod/book/tool/print/index.php?id=222967 8/24
31/7/2018 1.2. Tipos de datos.
nl = x;
byte ns;
https://utds.mrooms.net/mod/book/tool/print/index.php?id=222967 9/24
31/7/2018 1.2. Tipos de datos.
int n = 15, d = 4;
f = n / d;
https://utds.mrooms.net/mod/book/tool/print/index.php?id=222967 10/24
31/7/2018 1.2. Tipos de datos.
// ¿Por qué?
int a3 = (int) (pi * radio * radio);
https://utds.mrooms.net/mod/book/tool/print/index.php?id=222967 11/24
31/7/2018 1.2. Tipos de datos.
Java tiene un tipo de datos primitivo llamado boolean, que representa a los valores booleanos. Una variable
de tipo boolean puede guardar ya sea true o false. Observe que true y false son literales especiales en Java.
int x = 10;
boolean y = x > 15;
System.out.println("y es " + y);
https://utds.mrooms.net/mod/book/tool/print/index.php?id=222967 12/24
31/7/2018 1.2. Tipos de datos.
El tipo de datos char representa caracteres en Java. El tamaño de un carácter es de 16 bits, lo cual permite
representarlos como enteros usando el mapeado de caracteres Unicode. Un char puede ser tratado como un
valor entero, permitiéndole realizar operaciones aritméticas y haciendo comparaciones utilizando los símbolos
mayor que (>) y menor que (<). Tenga en cuenta que un char es un entero sin signo. Las comillas simples son
usadas para referirse a un caracter literal. Por ejemplo, 'A' es un caracter, pero "A" no lo es (es una
cadena). Algunos caracteres no imprimibles son referidos con una secuencia de escape.
https://utds.mrooms.net/mod/book/tool/print/index.php?id=222967 13/24
31/7/2018 1.2. Tipos de datos.
\\ Plica invertida
\u Caracter unicode
.
int x = 75;
char y1 = (char) x;
char mitad = '\u00BD';
https://utds.mrooms.net/mod/book/tool/print/index.php?id=222967 14/24
31/7/2018 1.2. Tipos de datos.
8. Cadenas.
Una cadena es una secuencia de caracteres. Tenga en cuenta que las cadenas no son tipos de datos
primitivos en Java y por tanto necesitan ser representadas por una clase. Java tiene una clase
llamada String que representa a objetos de cadena.
Una cadena es creada automáticamente para las cadenas literales en el código Java. Por ejemplo:
System.out.println("Hola, mundo");
Ejemplo sobre el uso de cadenas:
double pi = 3.14159;
String str = "Hola, " + nombre;
https://utds.mrooms.net/mod/book/tool/print/index.php?id=222967 15/24
31/7/2018 1.2. Tipos de datos.
// ¿Qué imprime?
System.out.println("Jorge \"Mágico\" González");
// ¿Qué imprime?
System.out.println("A\tB\tC\nD\tE\tF");
}
}
https://utds.mrooms.net/mod/book/tool/print/index.php?id=222967 16/24
31/7/2018 1.2. Tipos de datos.
Una referencia es diferente de un tipo de datos primitivo en que una referencia no contiene el valor real del
objeto al cual se refiere. En su lugar, una referencia apunta hacia la ubicación en memoria donde el objeto está
localizado.
Recuerde que el tipo de datos de una variable en Java corresponde a uno de los ocho tipos primitivos o a
una referencia a un objeto. Estas son las únicas dos opciones.
Si la variable es una referencia, el valor de la variable es una dirección de memoria. Esta dirección de memoria
es la ubicación del objeto al cual se refiere la referencia. El objeto contiene el dato real.
https://utds.mrooms.net/mod/book/tool/print/index.php?id=222967 17/24
31/7/2018 1.2. Tipos de datos.
10. Constantes.
La palabra reservada final es usada en Java para declarar una variable como una constante. Una
variable final en Java no puede ser cambiada después de que se le ha asignado un valor.
https://utds.mrooms.net/mod/book/tool/print/index.php?id=222967 18/24
31/7/2018 1.2. Tipos de datos.
Como se ha visto, una variable de tipo de datos cadena se crea de la siguiente manera:
https://utds.mrooms.net/mod/book/tool/print/index.php?id=222967 19/24
31/7/2018 1.2. Tipos de datos.
https://docs.oracle.com/javase/8/docs/api/java/lang/String.html
Es importante tener en cuenta que una cadena es constante, por lo que su valor no puede ser cambiado
después de su creación. Esto significa que cuando modifica el contenido de un objeto de tipo String, en
realidad lo destruye y lo vuelve a construir con la nueva cadena, lo cual ocasiona un uso inapropiado de los
recursos del equipo al incrementar la cantidad de instrucciones a ejecutar, lo cual a su vez influye en el
desempeño del equipo.
Si desea construir un objeto de tipo cadena que sea mutable, debe usar la
clase StringBuilder o StringBuffer.
https://utds.mrooms.net/mod/book/tool/print/index.php?id=222967 20/24
31/7/2018 1.2. Tipos de datos.
https://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html
https://utds.mrooms.net/mod/book/tool/print/index.php?id=222967 21/24
31/7/2018 1.2. Tipos de datos.
https://docs.oracle.com/javase/8/docs/api/java/lang/StringBuffer.html
http://www.javatpoint.com/multithreading-in-java
https://www.tutorialspoint.com/java/java_multithreading.htm
https://utds.mrooms.net/mod/book/tool/print/index.php?id=222967 22/24
31/7/2018 1.2. Tipos de datos.
Por convención, los valores contenidos en el tipo de datos especial enumse escriben en mayúsculas, aunque
nada impide que lo escriba en minúsculas.
Ejemplo:
NOTA:
https://docs.oracle.com/javase/tutorial/java/javaOO/enum.html
https://www.mkyong.com/java/java-enum-example/
Respecto al código, resuelva las siguientes situaciones:
1. Escriba el programa que haga uso del tipo de datos especial enum Dia que
deberá definir en el mismo archivo y realice lo siguiente:
1. Imprima cualquier valor directamente del tipo de datos especial enum.
2. Asigne un valor contenido en el tipo de datos especial enum a una
variable de tipo cadena e imprímala.
3. Imprima todos los valores almacenados en el tipo de datos especial
enum.
https://utds.mrooms.net/mod/book/tool/print/index.php?id=222967 23/24
31/7/2018 1.2. Tipos de datos.
https://utds.mrooms.net/mod/book/tool/print/index.php?id=222967 24/24