Programación n Orientada a Objetos Sentencias Java Parte I Ing. Julio Ernesto Carreño o Vargas MsC.
Variables y expresiones aritméticas
Variables Conceptos de Memoria Una variable es un espacio en la memoria del PC Cada variable tiene un nombre, un tipo, un tamaño y un valor 3
Declaración e inicialización de variables de Memoria Para declarar una variable: int number1; Para inicializar una variable: number1 = 45; Se puede declarar e inicializar al mismo tiempo: int number2 = 72; int sum = number1 + number2; 4
Expresiones Aritméticas ticas Operación Operador Expresión algebráica Expresión Java Adición + f + 7 f + 7 Substración p c p - c Multiplicación * bm b * m División / x / y ó ó x y x / y La división entre enteros trunca el resultado: 7 / 5 es igual a 1 Operador módulo (%) obtiene el residuo 7 % 5 es igual a 2 5
Precedencia de los operadores Algunos operadores aritméticos ticos actúan an antes que otros, por ejemplo, la multiplicación n antes de la adición Coloque paréntesis para evitar ambigüedades y facilitar la lectura de la expresión a + b + c / 3 ( a + b + c ) / 3 6
Tipos primitivos de Java Ejemplos double d1 = 123.4; double d2 = 1.234e2; float f1 = 123.4f; short edad;
Valores Por defecto para Tipos primitivos de Java Al crear las variables ellas se inicializan con un valor por defecto
Constantes Si se quiere que un valor permanezca sin cambiar durante la ejecución n de un programa, se debe usar una constante. Utilice la palabra reservada final para definir una constante y asigne un valor en su declaración. 9
Tipos de Estructuras de control
Tipos de Estructuras de Control En Java las sentencias de un programa se ejecutan normalmente en el orden en que son escritas. Los programas Java se componen de tres tipos de estructuras de control Estructuras de secuencia Estructuras de selección Estructuras de repetición 11
Estructuras de selección Sentencia if Sentencia de selección simple Sentencia if else Sentencia de selección doble Sentencia switch Sentencia de selección múltiple 12
Estructuras de repetición También conocidas como ciclos Ejecutan de manera repetida una acción mientras la condición del ciclo sea verdadera Sentencia while Ejecuta las acciones de su cuerpo 0 ó más veces Sentencia do while Ejecuta las acciones de su cuerpo 1 ó más veces Sentencia for Ejecuta las acciones de su cuerpo 0 ó más veces 13
Otros Elementos para estructuras de secuencia
Cast implícito entre Tipos Cuando se mezclan tipos de datos en las expresiones se usan reglas de promoción n que aseguran que los tipos de datos de los operandos de la expresión n son iguales La promoción n se realiza hacia el tipo de variable de mayor precisión. 15
Cast explícito entre Tipos La promoción n puede realizarse de manera explícita precediendo la expresión n del tipo deseado encerrado entre paréntesis. 16
Otros métodos m de conversión Errata: los parámetros deben ser cadenas (String) entre " y no ' 17
Sobrecarga del operador + output = test + 1 + 2; output = 1 + 2 + test ; 18
Operadores de asignación compuestos Una sentencia de la forma: variable = variable operador expresion; Donde operador es uno de los siguientes: + - * / % Puede ser escrita de manera abreviada como: variable operador= expresion; No puede existir espacio entre el operador y el signo igual 19
Ejemplos de operadores de asignación n compuestos 6 2 6 20
Operadores de incremento y decremento ++ Operador unario de incremento ++ suma uno a su operando Operador unario de decremento - - Operador unario de decremento Resta uno a su operando Prefijo y Postfijo Si el operador unario está antes del operando: cambia c el valor del operando antes de usarlo Si el operador unario está después s del operando: usa el operando y luego cambia dicho valor 21
Ejemplos de operadores de incremento y decremento 5 4 4 5 22
Estructuras de selección
Sentencia if simple Ejecuta una acción si la condición especificada es cierta la condición debe escribirse entre paréntesis ( ) la condición siempre se evalúa como falso ó verdadero La acción a ejecutar se debe encerrar en un bloque de código con los signos { y } Si el cuerpo sólo tiene una sentencia no son necesarias las llaves El control del programa siempre continua después de la sentencia if 24
Operadores de Igualdad y Operadores Relacionales Operator estándar matemático Operador Java Condición Significado Operadores de Igualdad = == x == y x es igual a y!= x!= y x es diferente a y Operadores Relacionales > > x > y x es mayor que y < < x < y x es menor que y >= x >= y x es mayor ó igual que y <= x <= y x es menor ó igual que y 25
Ejemplo if simple 26
Sentencia if else Ejecuta una acción n si la condición n especificada es cierta (if)( ó una acción n diferente si la condición n especificada es falsa (else).( 27
Operador Condicional? : Java tiene un operador ternario? :,:, que tiene la forma: condición n? accion por verdadero : accion por falso 28
Sentencias if-else anidadas Las sentencias if else pueden ser colocadas dentro de otras sentencias if else Problema del balanceo del else Los else son asociados al último if Preferible colocar { y } para romper dicho problema 29
Ejemplo if-else anidadas 30
Problema del balanceo del else Buenas prácticas: usar siempre llaves y evitar anidamiento de if-else 31
Operadores LógicosL Permiten formar condiciones más m s complejas mediante la combinación n de sentencias sencillas Operadores lógicos l de Java && (AND) (OR)! (NOT) Tablas de verdad 32
Ejemplos Operadores LógicosL int edad = 10; String genero = "femenino"; // operador AND if (edad >= 18 && genero.equals("femenino") { } System.out.println("Mujer mayor de edad"); // operador OR if (edad < 18 genero.equals(""){ } System.out.println("No habilitado para votar"); // operador NOT if (! genero.equals("femenino") { } System.out.println("Hombre"); 33
Evaluación n condiciones if (edad >= 18 && genero.equals("femenino") { } System.out.println("Mujer mayor de edad"); Si edad es menor que 18 la evaluación de la expresión se detiene 34
Variables booleanas 35
Operador == en Cadenas Las cadenas en java son objetos, no tipos primitivos. El == en cadenas compara direcciones de memoria. En el primer ejemplo las variables cadenas no tienen la misma dirección, en el segundo sí. PARA COMPARAR VALORES DE CADENAS SE DEBE USAR equals 36
Sentencia switch Usada para múltiples m selecciones Una serie de if-else pueden ser reemplazados por un switch para mejorar la legibilidad del código. 37
Expresión del switch puede ser de tipo: int, char, constantes Cada valor de opcion tiene un case Ejemplo switch break rompe y sale del switch - Caso sino(else) 38
Nota del switch/break Omitir sentencias break en el switch, causa el cuerpo del siguiente case se ejecute también, sin importar la condición. 39
Bibliografía C. Thomas Wu. An Introduction to Object Oriented Programming with Java Paul Deitel. Como programar en Java 7/e. Pearson Education. 2007. 40