Documente Academic
Documente Profesional
Documente Cultură
• En Java tenemos:
ü Tipos de datos primitivos
ü Elemento de valor indivisible
ü Numéricos
ü Lógicos
ü Caracteres
ü Clases
ü Objetos
ü Desde la perspectiva de los datos, un objeto es un
tipo de dato compuesto.
ü Aunque conceptualmente es mucho más que
un conjunto de datos.
TIPOS DE DATOS
entero
logico
TIPOS DE DATOS
obj
Instancia de clase Scanner
LAS SENTENCIAS
Declaración
Secuencia o Expresión
Selección / Condicional
Estructuras de
Control de Flujo
Iteración
LAS SENTENCIAS
A. De Variables
Son las sentencias en las cuales declaro una variable y a modo
optativo puedo definir su valor (inicializarla)
<TIPO> <IDENTIFICADOR VARIABLE> = <EXPR>;
LA SECUENCIA
• Ejemplos:
ü num = 5; // num tendrá un valor igual a 5
ü num = num * 6; // num se le asignara el valor resultante de
multiplicar el valor contenido en num (5) por 6.
ü miBici = new Bicicleta (); // le estoy asignando una referencia al
objeto que estoy construyendo con el operador new.
• Una sentencia de asignación no es una igualdad
matemática.
SECUENCIA: INC O DEC
<IDENTIFICADOR VAR>++;
<IDENTIFICADOR VAR>--;
++<IDENTIFICADOR VAR>;
--<IDENTIFICADOR VAR>;
• Ejemplos:
ü //Asumieno que num vale 5
ü num++; // num valdrá 6
ü num--; // num volverá a valer 5.
ü --num; // num valdrá 4
ü ++num; // num valdrá 5.
SECUENCIA: INVOCACION
C. De invocación a métodos
Son las que invocan a un método de un objeto o clase.
• Ejemplos:
ü System.out.println("Hola gente!!!");
ü scanner.nextInt();
Ejemplo:
• new Scanner (System.in);
SENTENCIAS DE CONTROL DE FLUJO
if (<CONDICION1>)
{
<Sentencias que se ejecutan si se da la condición1> }
else if (<CONDICION2>)
{
<Sentencias que se ejecutan si se da la condición1> }
else if (<CONDICION3>)
{
<Sentencias que se ejecutan si se da la condición1> }
else
{
<Sentencias que se ejecutan si no se da ninguna de las condiciones
anteriores>
}
SELECCIÓN MULTIPLE
• Esta sentencia, llamada “switch”, nos permite controlar el flujo
cuando se tiene que ejecutar un conjunto de sentencias en base al
valor que retorne una expresión.
• Los valores de retorno tienen que ser del tipo byte, short, char, int y
tipos enumerados.
• La sentencia switch evalúa su expresión y ejecuta el caso
apropiado.
Switch (<EXPRESION>)
{
case <VALOR1>:
<Sentencias>;
break;
case <VALOR2>
<Sentencias>;
break;
case <VALORN>:
<Sentencias>;
break;
default:
<Sentencias>;
break;
}
SELECCIÓN MULTIPLE
• Sintaxis:
for (<INICIO>; <COND>;<INCREMENTO>)
{
<Sentencias>
}
• Ejemplos:
int i = 0;
do
{
System.out.println(“Efectúo la iteración número “
+ i);
i++; // incremento el valor de la variable i y
tiendo a falsificar la condición.
}
while (i < 10)
FOR Y WHILE
• Recordar que:
ü Por variables locales nos referimos a:
ü Parámetros en el encabezado + variables declaradas
en el cuerpo
ü Los parámetros no pueden ser redeclarados como
variables dentro del cuerpo del método.
LA NOMENCLATURA
0 1 2 3 4 5 6 7 Indices
Arreglo de 8 elementos
Elemento ubicado
en el índice 2
LOS ARREGLOS
• Ejemplos:
int[] arregloEnteros;
boolean[] arregloBooleanos;
double[] arregloDoubles;
<IDENTIFICADOR VAR>[<EXPR>]
• Ejemplos:
arregloEnteros[0] = 10; // al primer elemento
del arreglo le asigno un 10
arregloEnteros[1] = 10 + arregloEnteros[0]; //
al segundo elemento le asigno 10 más el valor
del primer elemento (10)
0 1 2 3 4 5 6 7
Variable de
Referencia
8
arreglo
lenght
LOS ARREGLOS
• Longitud
ü Contiene el valor que equivale a la cantidad de
elementos de arreglo.
ü No se puede modificar
ü Es un atributo de un objeto arreglo.
ü Se puede acceder a dicho atributo a través de la variable
que tiene una referencia a una instancia concreta.
<IDENTIFICADOR VAR>.length
Columnas
0 1 2 3 4 5 6 7
0
3
Filas
7
LAS MATRICES
• Declaración
<tipo> <nombre>[][];
• Construcción
<nombre> = new <tipo>[FILAS][COLS];
• Acceso
<nombre>[FILA][COL]
ITERANDO EN LAS MATRICES
Variable de
Referencia
matriz
LAS MATRICES
0 1 2 3 4 5 6 7
0
0 1 2 3 4 5 6 7
1
0 1 2 3 4 5 6 7
2
LAS MATRICES
int a, b, c;
a = b = c = 0; // Asigna las tres variables con
valor igual 0.
int i = 200;
float f = i; // hay una conversión implícita
double d = f; // hay otra conversión
implícita
CONVERSIONES EXPLICITAS
• La conversión de un tipo con más bits a un tipo de
menos bits es explícita y nos vemos obligamos a
especificar el casteo.
ü De esta forma el compilador nos advierte que seamos
conscientes de que se puede estar perdiendo información.
float f = 200;
int i = f; // esto no compila, debo corregirlo
int i = (int) f; // ahora compila, hago una
conversión explicita
i = (int) 20.4 // i almacena 20
i = (int) 20.9 // i almacena 20 (no hay un buen
redondeo)
char c;
int i;
i = ‘a’ // (1) en i queda 97
i = (int) ‘a’; // (2) en i queda 97, es lo mismo que (1)
c = 97; // (3) en c queda ‘a’. Le asigno el carácter cuyo
código es 97
c = (char) 97; // (4) en c queda ‘a’, es lo mismo que (3).
c = i; // (5) No se puede. Debo convertir explícitamente.
c = (char) i; // (6) en c queda ‘a’. Convierto a carácter.
c = ‘a’+1; // (7) en c queda ‘b’. Es un caso “raro” pero se
permite.
c = (int) ‘a’+1; // (8) en c queda ‘b’. Es lo mismo que (7)
c = (char) (i+2); // (9) en queda ‘c’. (char) (97+2)
OPERADOR TERNARIO ?: