馃摍 Tipos de Datos y Variables#
Tabla de Contenido#
1 - Instalar Java
2 - Tipos de Datos
2.1 - Datos Primitivos
2.2 - Espacio en Memoria
2.3 - Desborde de Memoria
2.4 - Constantes
Instalar Java#
Descargar el kernel
Ejecuta la siguiente celda. No la modifiques!
%%sh
wget -q https://github.com/SpencerPark/IJava/releases/download/v1.3.0/ijava-1.3.0.zip
unzip -q ijava-1.3.0.zip
python install.py
wget -qO- https://gist.github.com/SpencerPark/e2732061ad19c1afa4a33a58cb8f18a9/archive/b6cff2bf09b6832344e576ea1e4731f0fb3df10c.tar.gz | tar xvz --strip-components=1
python install_ipc_proxy_kernel.py --kernel=java --implementation=ipc_proxy_kernel.py
Installed java kernel into "/usr/local/share/jupyter/kernels/java"
e2732061ad19c1afa4a33a58cb8f18a9-b6cff2bf09b6832344e576ea1e4731f0fb3df10c/install_ipc_proxy_kernel.py
e2732061ad19c1afa4a33a58cb8f18a9-b6cff2bf09b6832344e576ea1e4731f0fb3df10c/ipc_proxy_kernel.py
Moving java kernel from /usr/local/share/jupyter/kernels/java...
Wrote modified kernel.json for java_tcp in /usr/local/share/jupyter/kernels/java_tcp/kernel.json
Installing the proxy kernel in place of java in /usr/local/share/jupyter/kernels/java
Installed proxy kernelspec: {"argv": ["/usr/bin/python3", "/usr/local/share/jupyter/kernels/java/ipc_proxy_kernel.py", "{connection_file}", "--kernel=java_tcp"], "env": {}, "display_name": "Java", "language": "java", "interrupt_mode": "message", "metadata": {}}
Proxy kernel installed. Go to 'Runtime > Change runtime type' and select 'java'
/content/install.py:164: DeprecationWarning: replace is ignored. Installing a kernelspec always replaces an existing installation
install_dest = KernelSpecManager().install_kernel_spec(
Instrucciones para activar el kernel
Dirigite a Entorno de ejecuci贸n > Cambiar tipo de entorno de ejecuci贸n > Elige la opci贸n Java > Da click en Guardar
Tipos de Datos#
Datos Primitivos#
// Entero de tipo byte
byte numByte = 2;
System.out.println(numByte);
2
// Erro en asiganci贸n de tipo byte
byte numByte2 = 255;
System.out.println(numByte2);
| byte numByte2 = 255;
incompatible types: possible lossy conversion from int to byte
// Entero de tipo int
int numero_1 = 5;
System.out.println(numero_1);
5
// Entero de tipo short
short numero_2 = 5;
System.out.println(numero_2);
5
// Erro en asiganci贸n de tipo short
short numShort = 32_768;
System.out.println(numShort);
| short numShort = 32_768;
incompatible types: possible lossy conversion from int to short
// Entero de tipo long
long numero_3 = 23456;
System.out.println(numero_3);
23456
// Punto flotante de tipo float
float numero_4 = 54.6f;
System.out.println(numero_4);
54.6
// Punto flotante de tipo double
double numero_5 = 54.6;
System.out.println(numero_5);
// Punto flotante de tipo double
double numero_5 = 13.1d;
System.out.println(numero_5);
54.6
13.1
// Car谩cter
char letra_1 = 'B';
System.out.println(letra_1);
B
// Booleano
boolean bool_1 = true;
System.out.println(bool_1);
true
Espacio en memoria#
System.out.println("Tama帽o de byte: " + (Byte.SIZE/8) + " bytes.");
System.out.println("Tama帽o de short: " + (Short.SIZE/8) + " bytes.");
System.out.println("Tama帽o de int: " + (Integer.SIZE/8) + " bytes.");
System.out.println("Tama帽o de long: " + (Long.SIZE/8) + " bytes.");
System.out.println("Tama帽o de char: " + (Character.SIZE/8) + " bytes.");
System.out.println("Tama帽o de float: " + (Float.SIZE/8) + " bytes.");
System.out.println("Tama帽o de double: " + (Double.SIZE/8) + " bytes.");
Tama帽o de byte: 1 bytes.
Tama帽o de short: 2 bytes.
Tama帽o de int: 4 bytes.
Tama帽o de long: 8 bytes.
Tama帽o de char: 2 bytes.
Tama帽o de float: 4 bytes.
Tama帽o de double: 8 bytes.
Desborde de Memoria#
short num1 = 32767;
System.out.println(num1);
32767
short num2 = 32768;
System.out.println(num2);
| short num2 = 32768;
incompatible types: possible lossy conversion from int to short
int num3 = 32768;
System.out.println(num3);
32768
byte num=127;
System.out.println(num);
127
Constantes#
En los notebooks de Colab las constantes no funcionan, sin embargo, en otros IDEs como IntelliJ funcionan correctamente.
Asignamos una valor que n煤nca cambiar谩:
final double PI = 3.141592653589793238;
Si intentamos modificar su valor no ser谩 posible:
PI = 3.555;
Error: Cannot assign a value to final variable 'PI'
Otro ejemplo
final char LetraA = 'A';
LetraA = 'B';
Error: Cannot assign a value to final variable 'LetraA'
Ejemplo en Colab (Recuerda que no funciona)
final int constanteEntera = 5;
constanteEntera = 6;
System.out.println(constanteEntera);
6