Programación Orientada a Objetos Sentencias Java Parte I

Anuncio
Programación Orientada a Objetos
Sentencias Java Parte I
Ing. Julio Ernesto Carreño Vargas MsC.
Variables
y expresiones aritméticas
Conceptos de Memoria
Variables
Una variable es un espacio en la memoria del PC
Cada variable tiene un nombre, un tipo , un tamaño
y un valor
Programación Orientada a Objetos
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;
Programación Orientada a Objetos
4
Expresiones Aritmé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
Programación Orientada a Objetos
5
Precedencia de los operadores
Algunos operadores aritméticos actúan antes
que otros, por ejemplo, la multiplicació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
Programación Orientada a Objetos
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 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.
Programación Orientada a Objetos
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
Programación Orientada a Objetos
11
Estructuras de selección
Sentencia if
Sentencia if else
Sentencia de selección simple
Sentencia de selección doble
Sentencia switch
Sentencia de selección múltiple
Programación Orientada a Objetos
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
Sentencia do while
Ejecuta las acciones de su cuerpo 0 ó más veces
Ejecuta las acciones de su cuerpo 1 ó más veces
Sentencia for
Ejecuta las acciones de su cuerpo 0 ó más veces
Programación Orientada a Objetos
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 que aseguran que los tipos de
datos de los operandos de la expresión son iguales
La promoción se realiza hacia el tipo de variable de
mayor precisión.
Programación Orientada a Objetos
15
Cast explícito entre Tipos
La promoción puede realizarse de manera
explícita precediendo la expresión del tipo
deseado encerrado entre paréntesis.
Programación Orientada a Objetos
16
Otros métodos de conversión
Errata: los parámetros deben ser cadenas (String) entre " y no '
Programación Orientada a Objetos
17
Sobrecarga del operador +
output = “test” + 1 + 2;
Programación Orientada a Objetos
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
Programación Orientada a Objetos
19
Ejemplos de operadores de
asignación compuestos
6
2
6
Programación Orientada a Objetos
20
Operadores de incremento y
decremento
Operador unario de incremento ++
Operador unario de decremento - suma uno a su operando
Resta uno a su operando
Prefijo y Postfijo
Si el operador unario está antes del operando: cambia el valor
del operando antes de usarlo
Si el operador unario está después del operando: usa el
operando y luego cambia dicho valor
Programación Orientada a Objetos
21
Ejemplos de operadores de
incremento y decremento
5
4
4
5
Programación Orientada a Objetos
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
Programación Orientada a Objetos
24
Operadores de Igualdad y
Operadores Relacionales
Operator estándar
matemático
Operadores de Igualdad
=
≠
Operadores Relacionales
>
<
≥
≤
Programación Orientada a Objetos
Operador
Java
Condición
Significado
==
!=
x == y
x != y
x es igual a y
x es diferente a y
>
<
>=
<=
x
x
x
x
x es mayor que y
x es menor que y
x es mayor ó igual que y
x es menor ó igual que y
> y
< y
>= y
<= y
25
Ejemplo if simple
Programación Orientada a Objetos
26
Sentencia if else
Ejecuta una acción si la condición especificada
es cierta (if
( ) ó una acción diferente si la
condición especificada es falsa (else
).
(
Programación Orientada a Objetos
27
Operador Condicional ? :
Java tiene un operador ternario ? :, que tiene la forma:
condición ? accion por verdadero : accion por falso
Programación Orientada a Objetos
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
Programación Orientada a Objetos
29
Ejemplo if-else anidadas
Programación Orientada a Objetos
30
Problema del balanceo del else
Buenas prácticas: usar siempre llaves
y evitar anidamiento de if-else
Programación Orientada a Objetos
31
Operadores Lógicos
Permiten formar condiciones más complejas
mediante la combinación de sentencias sencillas
Operadores lógicos de Java
&& (AND)
|| (OR)
!
(NOT)
Tablas de verdad
Programación Orientada a Objetos
32
Ejemplos Operadores Lógicos
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 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
Programación Orientada a Objetos
34
Variables booleanas
Programación Orientada a Objetos
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
Programación Orientada a Objetos
36
Sentencia switch
Usada para múltiples selecciones
Una serie de if-else pueden ser reemplazados
por un switch para mejorar la legibilidad del
código.
Programación Orientada a Objetos
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)
Programación Orientada a Objetos
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.
Programación Orientada a Objetos
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.
Programación Orientada a Objetos
40
Descargar