Вы находитесь на странице: 1из 24

Algoritmos y Estructuras de Datos

Estructuras de Control – Lenguaje Java


Ing. Aníbal Sardón Paniagua
C16290@utp.edu.pe
anibal.sardon@hotmail.com

1
Objetivos de la sesión
• Descubrir la sintaxis básica del lenguaje Java
• Conocer las estructuras de Control del lenguaje Java.

2
Temas a tratar
• Sintaxis Básica del lenguaje Java
• Estructuras de Control del lenguaje Java

3
Elementos del Lenguaje JAVA

4
Comentarios

• Comentario de una línea: //


• int usu = 0; // el número de usuarios
• Comentario de bloque: /* .... */
• /* Esto no se tendrá
en cuenta */
• Comentario javadoc: /** .... */
• Para comentar el código
Identificadores

• Nombran variables, funciones, clases y objetos

• Comienza con una letra, un subrayado (_) o un símbolo de dólar


($). Los siguientes caracteres pueden ser letras o dígitos.

• Se distinguen las mayúsculas de las minúsculas

• No hay una longitud máxima establecida para el identificador.

6
Variables
• Sirven para referirse tanto a objetos como a tipos primitivos.

• Tienen que declararse antes de usarse:


tipo identificador;
int posicion;
• Se puede inicializar mediante una asignación:
tipo identificador = valor;
int posicion = 0;

• Definición de constantes:
static final float PI = 3.14159f;
• Las variables tienen un tipo que define el rango de valores y las
operaciones que pueden hacerse
• Tipos primitivos
• Tipos referencia 7
Tipos de Datos Primitivos
• Se pueden utilizar valores de los siguientes tipos:
• Enteros (se inicializan a 0)
• byte (entero de 8 bits) • Las variables pueden inicializarse
• short (entero de 16 bits) en la definición
• int (entero de 32 bits)
• long (entero de 64 bits) int a = 2;
• Reales (se inicializan a 0.0) char b = 'a';
• float (decimal de 32 bits) double c = 123.13123;
• double (decimal de 64 bits) Bicicleta d = new Bicicleta();
• Carácter (se inicializa al carácter nulo)
• char (Unicode de 16 bits)
• Booleanos (se inicializa a false)
• boolean (true, false)
8
Tipos de Datos Referencia

• Objetos
• Instancias de clases
• Arrays
• Colección de elementos del mismo tipo, sean básicos o
complejos
• Se inicializan a null
Constantes

• Variables que no pueden cambiar de valor una vez


establecido
• Modificador final

final int a;
a = 12;
final double b = 456.4546456;
Operadores
• Operadores Aritméticos • Operadores de Asignación

• Operadores Relacionales • Operadores Especiales

11
Operadores
• Operadores Booleanos

• Operan sobre booleanos y devuelven booleanos


• AND: op1 && op2
• OR: op1 || op2
• NOT: !op1
• XOR: op1 ^ op2

• Otros Operadores
• ?: (if-then-else)
if (a == b) then c else d;
a == b ? c : d
• [] - indexación de arrays
• . (punto): acceso a métodos y variables
• (): para especificar los argumentos a métodos
• +: concatenación de cadena
12
Operadores
• En orden de precedencia:

Operadores Asociatividad Tipo

() izquierda a derecha paréntesis


++ -- + - ! derecha a izquierda unarios
* / % izquierda a derecha multiplicativos
+ - izquierda a derecha aditivos
< <= > >= izquierda a derecha relacionales
== != izquierda a derecha de igualdad
& izquierda a derecha AND lógico booleano
^ izquierda a derecha OR exclusivo lógico booleano
| izquierda a derecha OR inclusivo lógico booleano
&& izquierda a derecha AND lógico
|| izquierda a derecha OR lógico
?: derecha a izquierda condicional
expresion ? sentencia1 : sentencia2
= += -= *= /= %= derecha a izquierda asignación ej. x += y  x = x + y;

13
Sentencias de Control

14
Sentencias Condicionales

• Permiten ejecutar ciertas sentencias dependiendo de una


condición
• If / else / else if
• Switch / case
• ?:
Sentencias Condicionales

switch(expresión) {
case valor1:
if( expresión-booleana )
sentencias;
{
break;
sentencias;
} case valor2:
[else { sentencias;
sentencias; break;
}] [default:
sentencias;]
}

16
Sentencias Condicionales - Ejemplos
1) int saldo;

if (saldo<0)
System.out.println(“Cuenta en números rojos”);

2) int dia;

switch (dia){
case 1: System.out.println(“Lunes”); break;
case 2: System.out.println(“Martes”); break;

case 7: System.out.println(“Domingo”); break;
}
El lenguaje de programación Java 17
If / else / else if
• Sólo ejecuta el cuerpo si la condición es • Se pueden encadenar varios condicionales
cierta • Aunque más de una condición sea cierta, sólo se
ejecuta el cuerpo de la condición que aparece la
• La condición debe ser booleana primera
if (condición) { • Si no se verifica ninguna condición, se ejecuta el
cuerpo else final
if (condición1) {
} cuerpo1
}
• Es posible especificar qué hacer si la else if (condición2){
condición no se cumple mediante el cuerpo2
else }
if (condición) {
else if (condición3) {
cuerpo1 cuerpo3
} }
else { else {
cuerpo2 cuerpo4
} }
if - Ejemplos

public class EjemploIF


{
public static void main(String[] args)
{
int edad = 18;

if(edad >= 18)


{
System.out.println("Eres mayor de edad.");
}
else
{
System.out.println("No eres mayor de edad.");
}
}
}
if - Ejemplos
public class EjemplosIFAnidados
{
public static void main(String[] args)
{
int edad = 5;

if(edad >= 18)


{
System.out.println("Tienes 18 o mas.");
}
else if(edad >= 15)
{
System.out.println("Tienes 15 años o mas pero menos de 18.");
}else if(edad >= 10)
{
System.out.println("Tienes 10 años o mas pero menos de 15.");
} else
{
System.out.println("Eres un niño.");
}
}
}
if - Ejemplos
public class EjemploOperadorCondicional
{
public static void main(String[] args)
{
int edad = 18;

//Utilizando el operador condicional


String resultado = (edad >=18) ? "Mayor de edad." : "Menor de edad.";
System.out.println(resultado);

//Utilizando if...else
if(edad >= 18)
{
System.out.println("Mayor de edad.");
}
else
{
System.out.println("Menor de edad.");
}
}
}
if - Ejemplos
if ((( año % 4 == 0 ) if (temperatura > 15)
{
&& ( año % 100 != 0 )) if (temperatura > 25)
{
|| ( año % 400 == 0 )) System.out.println("temperatura mayor a 25");
{ } else
{
System.out.println("Es bisiesto"); System.out.println("temperatura entre 15 y 25");
}
} }
else else if (temperatura < 5)
{
{ System.out.println("temperatura menor a 5");
} else
System.out.println("No es bisiesto"); {
System.out.println("temperatura de 5 a 15");
} }
switch
• Modo compacto de los if else anidados
switch (condición)
• Sólo permite condiciones de igualdad {
• Si la condición es igual a 'a', se ejecuta case a:
cuerpo 1 cuerpo1
• Si ninguna se verifica break;
se ejecuta 'default‘ case b:
• Mucho cuidado con switch cuerpo2
• Se ejecutan las sentencias desde el case break;
que verifica la condición hasta el final default:
cuerpo3
del switch o hasta un break.
}
int dia =
switch - Ejemplos Calendar.getInstance().get(Calendar.DAY_OF_WEEK);
switch (dia) {
case 1:
System.out.println("Domingo");
break;
case 2:
System.out.println("Lunes");
break;
case 3:
System.out.println("Martes");
break;
case 4:
System.out.println("Miercoles");
break;
case 5:
System.out.println("Jueves");
break;
case 6:
System.out.println("Viernes");
break;
case 7:
System.out.println("Sabado");
break;
// default: es opcional
}

Вам также может понравиться