Mostramos todos los tipos de datos básicos disponibles en Java para declarar variables. Incluimos algún ejemplo en Java de uso de los tipos de datos y declaración de variables. Mostramos también las reglas de conversión de tipos numéricos en Java. Indicamos cómo concatenar cadenas en java. Explicamos cómo declarar y usar los Arrays en Java.
- Tipos de datos en Java.
- Ejemplo de declaración de variables en Java.
- Conversión de tipos numéricos en Java.
- Concatenación en Java.
- Conversión de cadenas y numéricos en Java.
- Arrays en Java.
Tipos de datos en Java
A continuación mostramos los tipos de datos básicos de Java, que son: números enteros, números reales, caracteres y booleanos.
Números enteros en java
Los números enteros posibles en Java son:
Tipo | Tamaño (en bytes) | Rango de valores |
byte | 1 | -128 a 127 |
short | 2 | -32.768 a 32.768 |
int | 4 | -2.147.483.648 a 2.147.483.647 |
long | 8 | -9.223.372.036.854.775.808 a -9.223.372.036.854.775.807 a |
Números reales en Java
Los números reales posibles en Java son:
Tipo | Tamaño (en bytes) | Rango de valores |
float | 4 | ±3.4×10-38 a ±3.4×1038 |
double | 8 | ±1.8×10-308 a ±1.8×10308 |
Caracteres y cadenas de caracteres en Java
Java incluye el tipo de datos básico para caracteres: char. Este tipo solo admite un carácter. En Java no hay un tipo predefinido para cadenas de caracteres. En su lugar existe la clase String, que es la que soporta las distintas operaciones con cadenas de caracteres.
Método | Uso |
substring | Permite la extracción de una cadena dentro de otra |
charAt | Permite la extracción de un carácter cuya posición se la pasamos como parámetro |
equals | Permite comparar cadenas de caracteres. Devuelve true o false en función de si ambas cadenas son iguales o no |
toLowerCase | Convierte la cadena a minúsculas |
toUpperCase | Convierte la cadena a mayúsculas |
toCharArray | Devuelve en un array de char con todos los caracteres de la cadena |
replace | Reemplaza una subcadena en la cadena |
trim | Elimina espacios en blanco al principio y al final de la cadena |
length | Devuelve un int con la longitud de la cadena (número de caracteres que contiene) |
indexOf | Devuelve la posición en la cadena pasada por parámetro desde el principio. Devuelve -1 si no existe. También se le puede indicar la posición desde donde se empezará a buscar |
La clase String incluye muchos más métodos, los anteriores son de los más utilizados, algunos otros: replaceFirst, replaceAll, startWith,valueOf, lastIndexOf, getBytes, equalsignoreCase, endsWith, concat, etc..
Un ejemplo de declaración tanto de char como String con inicialización:
1 2 |
String miTexto = "Esto es una prueba"; char miCaracter = "a"; |
Y un ejemplo del uso de los métodos de tratamiento de String:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
public static void main(String[] args) { //Declaración de una variable String con inicialización y otra sin inicialización String nombre = "Alonso", mensaje; //Declaración de una variable char sin inicialización char ultimoCaracter; //Declaración de una variable entera con inicialización int edad = 45; //Ejemplo de concatenación //Al concatenar String con int la variable int se convertirá a String mensaje = "Mi nombre es " + nombre + ", tengo " + edad + " años"; System.out.println(mensaje); //Uso de charAt y length para obtener último carácter de la cadena ultimoCaracter = mensaje.charAt(mensaje.length() - 1); System.out.println(ultimoCaracter); //Uso de substring para obtener los 5 primeros caracteres de la cadena System.out.println(mensaje.substring(0, 5)); //Uso de equals para comparar cadenas if (mensaje.equals(ultimoCaracter)) System.out.println("Las cadenas son iguales"); else System.out.println("Las cadenas no son iguales"); } |
Boolean en Java
Java también incluye el tipo de datos boolean (true o false).
Ejemplo de uso de booleanos en Java:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
public static void main(String[] args) { //Declaración de variable de tipo booleano con inicialización boolean mayorMenor = 7 > 5; System.out.println ("Valor de mayorMenor: " + mayorMenor); //Declaración de variable de tipo booleano sin inicialización boolean resultado; int num1 = 32; int num2 = 26; //Establecemos un valor para la variable booleana //que dependerá de si num1 es mayor que num2 resultado = num1 > num2; if (resultado) { System.out.printf ("El número %s es mayor que el número 2 %s%n", num1, num2); } else { System.out.printf ("El número %s es menor que el número 2 %s%n", num1, num2); } } |
Ejemplo de declaración de variables en Java
Java requiere de la declaración de todas las variables que se vayan a usar, a diferencia de otros lenguajes como PHP o Python. Para declarar una variable solo tendremos que introducir su tipo de datos, un espacio y el nombre de la variable. Las variables se pueden inicializar en su declaración, con un igual. A continuación mostramos un ejemplo para entenderlo. Declararemos una variable que contendrá números enteros (short), con nombre «año» y le asignaremos un valor inicial de 2020:
1 |
short año = 2020; |
Un ejemplo de uso:
1 2 3 4 5 |
public static void main(String[] args) { int año = 2020; año = año + 10; System.out.println("El valor de la variable año más 10 es: " + año); } |
Java diferencia entre mayúsculas y minúsculas en la declaración de variables. Por ejemplo, la variable «año» no será la misma que la variable «Año».
Conversión de tipos numéricos en Java
En Java, si en una operación intervienen datos numéricos de distintos tipos, bien sea en variables o directamente introducidos, todos ellos se convertirán al tipo de dato que permite una mayor precisión y rango de representación numérica. Esta conversión, también denominada casting, se realiza de forma automática por parte del compilador.
- Si cualquier operando es double → Todos se convertirán en double.
- Si cualquier operando es float → Todos se convertirán en float.
- Si cualquier operando es long y no hay datos reales → Todos se convertirán en long.
- Si cualquier operando es int y no hay datos reales ni long → Todos se convertirán en int.
Jerarquía de conversión de tipos numéricos en Java
La jerarquía en las conversiones en Java, de mayor a menor es: Double – Float – Long – Int – Short – Byte. Estas conversiones solo serán importantes a la hora de mirar en qué tipo de variable guardamos el resultado de la operación. Esta ha de ser, al menos, de una jerarquía mayor o igual a la jerarquía de la máxima variable involucrada en la operación.
La jerarquía en las conversiones, de mayor a menor:
double | |
float | ↑ |
long | ↑ |
int | ↑ |
short | ↑ |
byte | ↑ |
Es posible convertir un dato de jerarquía superior a uno con jerarquía inferior. Según la conversión puede que se pierda información en el cambio. Esta operación se denomina cast y debe realizarse de forma explícita, indicando al compilador el tipo de dato de destino al que se va a convertir el dato que estamos manejando.
Un ejemplo de conversión (cast) entre enteros y float:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
public static void main(String[] args) { //Declaración de variables enteras, con una de ellas inicializada int edad = 45, ejEntero; //Declaración de variable float con inicialización float importe = 1100.55F; //Declaración de variable float con iniciación y conversión float importe2 = (float)2050.54; System.out.println("Tu edad actual es: " + edad); System.out.println("El importe 1: " + importe); System.out.println("El importe 2: " + importe2); //Hacer un cast para convertir float a int ejEntero = (int)importe; System.out.println("El importe 1 en entero: " + ejEntero); //Para pasar de int a float no es necesario hacer cast importe = ejEntero; System.out.println("El importe 1 en float: " + importe); } |
Concatenación en Java
La concatenación (unión) en Java se realiza con «+». Si concatenamos un String o char con cualquier otro tipo de dato será convertido a String de forma automática.
Algún ejemplo en Java de concatenación lo hemos mostrado en esta sección.
Conversión de cadenas y numéricos en Java
En Java es posible convertir una cadena de caracteres a un tipo numérico y viceversa. Estas conversiones también se pueden realizar con el resto de tipos de variables como byte, long, float o char utilizando una sintaxis similar.
A continuación mostramos algunos ejemplos de conversión de datos en Java. Utilizaremos conversiones tanto de cadenas a números como de números a cadenas.
Para convertir de String a int podemos usar Integer.parseInt(), por ejemplo:
1 2 3 4 5 6 7 |
public static void main(String[] args) { String edad = "45"; int edadNum; edadNum = Integer.parseInt(edad); edadNum = edadNum - 10; System.out.println("Mi edad menos 10 años: " + edadNum); } |
Para convertir de int a String podemos usar Integer.toString(), por ejemplo:
1 2 3 4 5 6 |
public static void main(String[] args) { int edad = 45; String edadTexto; edadTexto = Integer.toString(edad); System.out.println("Mi edad: " + edadTexto); } |
Para convertir de String a double podemos usar Double.parseDouble(), por ejemplo:
1 2 3 4 5 6 |
public static void main(String[] args) { String importe = "12200.4552"; double importeDouble; importeDouble = Double.parseDouble(importe); System.out.println("El importe en Double es: " + importeDouble); } |
Para convertir de double a String podemos usar Double.toString(), por ejemplo:
1 2 3 4 5 6 |
public static void main(String[] args) { double importe = 12200.4552; String importeTexto; importeTexto = Double.toString(importe); System.out.println("El importe en Double es: " + importeTexto); } |
Arrays en Java
Un array es una colección de variables del mismo tipo, a la que se hace referencia por un nombre común. Cada variable ocupa una posición en el array a la que se puede acceder para recuperar su valor.
En Java los arrays son un objeto, como tal, se crea mediante el comando new. Los arrays pueden ser unidimensionales, por ejemplo, una lista de variables, o multidimensionales, por ejemplo, una matriz.
La sintaxis en la definición de un array es:
tipo_datos[] nombre_array = new tipo_datos[tamaño_array];
Un ejemplo de uso de arrays de String en Java:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
public static void main(String[] args) { //Declaramos un array con 7 elementos de tipo String String[] diasSemana = new String[7]; //Agregamos en cada posición del array su valor diasSemana[0] = "Lunes"; diasSemana[1] = "Martes"; diasSemana[2] = "Miércoles"; diasSemana[3] = "Jueves"; diasSemana[4] = "Viernes"; diasSemana[5] = "Sábado"; diasSemana[6] = "Domingo"; //Obtenemos el valor de cada elemento //del array y lo mostramos por pantalla for (String dia: diasSemana) { System.out.println(dia); } } |
Un ejemplo de uso de arrays de int en Java:
1 2 3 4 5 6 7 8 |
public static void main(String[] args) { //Declaramos un array de int inicializado con valores int[] arrNum = {1,2,3,4,5,6,7}; for (int i = 0; i < arrNum.length; i++) { System.out.println(arrNum[i]); } } |