Apuntes
Tipos de datos
Rango posible de valores o datos usados durante la ejecución de un programa.
Pueden ser agrupados como primitivos y compuestos (derivados ó definidos por el usuario).
Primitivos
Números enteros:
- Identificados por la palabra
int
(desdeInteger.MAX_VALUE
hastaInteger.MIN_VALUE
) olong
(desdeLong.MAX_VALUE
hastaLong.MIN_VALUE
) en Java. - Ejemplos:
-175
,-95
,-6L
,-1
,0
,1
,8
,52L
,158
- La letra
L
permite establecer si el número entero es unint
o unlong
.
- Identificados por la palabra
Números reales o de precisión: desde -∞ hasta +∞.
- Identificados por la palabra
float
(Float.MAX_EXPONENT
yFloat.MAX_VALUE
así comoFloat.MIN_EXPONENT
yFloat.MIN_VALUE
) odouble
(Double.MAX_EXPONENT
yDouble.MAX_VALUE
así comoDouble.MIN_EXPONENT
yDouble.MIN_VALUE
) en Java. - Ejemplos:
-192.04
,-134.409F
,-4.005
,-1.0
,-0.6
,-0.9
,0
,0.3
,0.7D
,1.0
,7.0003
,146.375
,185.0739
- Las letras
F
yD
permiten establecer si el número real es unfloat
o undouble
respectivamente.
Tipo de dato real - Wikipedia Precisión y exactitud numérica - Wikipedia
- Identificados por la palabra
Lógicos o booleanos:
- Identificados por la palabra
boolean
(conformado solo portrue
yfalse
) en Java. - Ejemplos:
true
(para verdadero) yfalse
(para falso)
- Identificados por la palabra
Caracteres:
- Identificados por la palabra
char
en Java y siempre rodeados de comilla simple ('
). - Son letras, números o signos de puntuación encontrados en la forma escrita de un lenguaje natural.
- En Java se codifican mediante Unicode.
- Ejemplos:
'!'
,'@'
,'%'
,'a'
,'á'
,'A'
,'{'
,']'
,'*'
,'4'
,'-'
,'&'
,';'
,','
,'>'
,'?'
,'\u00e1'
('á'
),'\u0040'
('@'
),'\u0034'
('4'
),'\u007e'
('~'
)
- Identificados por la palabra
Compuestos
Clases: agrupación de atributos y métodos. Los atributos son de cierto tipos de datos primitivos o inclusive de otros tipos de datos compuestos mientras que los métodos reciben/regresan cierto tipos de datos primitivos o inclusive otros tipos de datos compuestos.
- Identificados por la palabra
class
. - Forman una de las unidades de abstracción para la Programación Orientada a Objetos.
Ejemplos:
public class <Nombre de la Clase> { <Cuerpo de la Clase> }
Es posible definir clases anidadas (clase anidada-interna o clase anidada-estática) así como clases locales (definidas en un bloque de código).
- Identificados por la palabra
Arreglos: agrupación secuencial (se respeta el orden) de elementos indexados (empezando por el
0
de izq. a der.) del mismo tipo de dato y separados por,
.Ejemplos:
new int[] {10, 20, 30, 40, 50}
,new boolean[] {true, false, false}
,new String[] {"!", "hola", "mundo", "!"}
,new char[] {'h', 'o', 'l', 'a'}
.Determinar el número de elementos:
new <Tipo de Dato>[] {<Elementos>}.length
.- La propiedad
length
regresa un número entero indicando la cantidad de elementos en el arreglo.
- La propiedad
Acceso a los elementos:
new <Tipo de Dato>[] {<Elementos>}[<Índice>]
.- El índice debe ser un númeto entero y estár en el rango de
0
al número de elementos menos uno.
- El índice debe ser un númeto entero y estár en el rango de
Obtención de la representación como cadena de caracteres del contenido de un arreglo:
Arrays.toString(new int[] {10, 20, 30, 40, 50});
- System.out.println(Arrays.toString(new int[] {10, 20, 30, 40, 50}));
- System.out.println(Arrays.toString(new boolean[] {true, false, false}));
Cadenas de caracteres: agrupación secuencial (se respeta el orden) de caracteres (tipo de dato primitivo) indexados (empezando por el
0
de izq. a der.).- Identificados por la palabra
String
en Java y siempre rodeados de comilla doble ("
). - Toda cadena de carácter es inmutable, los caracteres que la conforman no pueden ser modificados.
Ejemplos:
"¡hola mundo!"
,"1qaz@wsx.com"
,"4"
,"-0023.01200"
,"áÁéÉíÍóÓúÚ"
," ?=)(/&%$·! "
,new String(new char[] {'h', 'o', 'l', 'a'})
.Determinar el número de caracteres:
new String[] {<Caracteres>}.length
.- La propiedad
length
regresa un número entero indicando la cantidad de caracteres en la cadena de caracteres.
- La propiedad
Obtención de un caracter:
new String[] {<Caracteres>}.charAt(<Índice>)
.- El índice debe ser un númeto entero y estár en el rango de
0
al número de elementos menos uno.
- El índice debe ser un númeto entero y estár en el rango de
Obtención de un arreglo de caracteres a partir de una cadena de caracteres:
"¡hola mundo!".toCharArray()
- Identificados por la palabra
Expresión
- Es toda instrucción que al ser ejecutada es sustituida por algún valor.
- Toda expresión tiene un tipo de dato.
- Una forma de establecer expresiones es mediante el uso de operadores sobre los tipos de datos.
Ejemplos:
3 + 4
→7
45 - 10
→35
8 * 4
→32
-9 + -4
→-13
!true
→false
"¡hola" + " " + "mundo!"
→"¡hola mundo!"
new String(new char[] {'a', 'b', 'c'}).length
→3
(new int[] {10, 20, 30}[1]) * (new int[] {40, 50, 60}[1])
→1000
"¡" + "hola" + " " + "mundo" + "!"
→ `"¡hola mundo!"
Operadores
Aritméticos
- Suma:
int
:6 + 2
→8
,7 + 2 + 8 + 12
→29
,-6 + -4 + 7 + -2
→-5
,(6 + 5) * (-3 + -8) + (25 / 5 - 3)
→-119
double
:10.2 + 5.3
→15.5
,0.10 + 0.90
→1.0
,-4.30 + -2.1
→-6.40
,(8.34 - 6.1) * 0.3 + (0.45 + 3.6)
→4.72
- Múltiplicación:
int
:4 * 6
→24
,-5 * -3
→15
,8 * -4
→-32
,(5 + 2) * (3 + 7) - (6 * 5)
→40
Variables
Clase
- Representa una unidad de abstracción para la construcción de objetos del mundo real.
- Su definición establece las caracteristicas (también llamados atributos o propiedades) que todo objeto del mundo real tiene.
Definición / Código fuente / Sintaxis:
public class NombreDeLaClase { }
En Java:
- El código fuente debe ser guardado en un archivo de texto con el mismo nombre de la clase y la extensión
.java
. En este casoNombreDeLaClase.java
. - El código fuente se compila en la línea de comandos del sistema operativo mediante:
javac NombreDeLaClase.java
. Si no se presenta algùn error en la compilación se generará el "archivo ejecutable"NombreDeLaClase.class
. - El "archivo ejecutable"
NombreDeLaClase.class
es dado a la Máquina Virtual de Java (JVM) para su ejecución en la línea de comandos del sistema operativo mediante:java NombreDeLaClase
.
- El código fuente debe ser guardado en un archivo de texto con el mismo nombre de la clase y la extensión
Atributos o propiedades
Definición / Código fuente / Sintaxis:
private <tipo de dato> nombreDelAtributo;
Ejemplos:
private int primerAtributo; private double segundoAtributo; private boolean tercerAtributo; private char cuartoAtributo; private String quintoAtributo;
Métodos
Definición / Código fuente / Sintaxis:
public <tipo de dato> nombreDelMétodo(<tipo de dato> nombreDelParámetro) { <instrucciones> }
Ejemplos:
public int primerMétodo(int primerParámetro) { ...; ...; return 10; } public double segundoMétodo(double primerParámetro) { ...; ...; return 10.45; } public boolean tercerMétodo(boolean primerParámetro) { ...; ...; return false; } public String cuartoMétodo(String primerParámetro) { ...; ...; return "¡hola mundo!"; } public boolean quintoMétodo(int primerParámetro, char segundoParámetro, String tercerParámetro) { ...; ...; return true; };