Está en la página 1de 61

Captulo 2 - Introduccin a

las aplicaciones Java


contorno
2.1 Introduccin
2.2 Un primer programa en Java: Imprimir una lnea de
texto
2.3 Modificacin de nuestro primer programa Java
2.4 Visualizacin de texto en un cuadro de dilogo
2.5 Otra aplicacin Java: Aadir nmeros enteros
2.6 Conceptos de memoria
2.7 Aritmtica
2.8 Toma de Decisiones: Operadores de Igualdad y
Relacional
2.9 (Estudio de Caso Opcional) Pensando en Objetos:
Examinando la Declaracin del Problema
2003 Prentice Hall, Inc. Todos los derechos reservados.

2
2.1 Introduccin
En este captulo
Introducir ejemplos para ilustrar las
caractersticas de Java
Dos estilos de programa: aplicaciones
y applets
2003 Prentice Hall, Inc. Todos los derechos reservados.

2.2 Un primer programa en Java:


Imprimir una lnea de texto
Solicitud

Programa que se ejecuta utilizando


el intrprete java
Ejemplo de programa
Mostrar programa y luego analizar
cada lnea
2003 Prentice Hall, Inc.

Todos los derechos reservados.

contorno
4
Welcome1.java

Salida del programa


. 1 // Fig 2.1: Welcome1.java

2 // El programa del texto de impresin.

4 public class {Welcome1

6 // mtodo principal inicia la ejecucin de la aplicacin Java

7 void Main (args String []) public static

8{

9 System.out.println ( "Bienvenido a Java de programacin!");

10

11} // mtodo principal final

12

13} // fin de la clase Welcome1

Bienvenido a Java Programming!

2003 Prentice Hall, Inc. Todos los derechos reservados.


5

2.2 Un primer programa en Java:


Imprimir una lnea de texto
Los comentarios comienzan con: //
Comentarios ignorados durante la
ejecucin del programa
Documento y cdigo de descripcin
Proporciona legibilidad de cdigo
Los comentarios tradicionales: / * ... *
/
/ * Este es un tradicional
comentario. Puede ser
Dividido en muchas lneas * /
Otra lnea de comentarios
Nota: los nmeros de lnea no forman
parte del programa, se agregan para
referencia
. 1 // Fig 2.1: Welcome1.java

2 // El programa del texto de impresin.

2003 Prentice Hall, Inc. Todos los derechos reservados.


6

Linea en blanco
Hace que el programa sea ms
legible
Las lneas en blanco, los espacios y
las pestaas son caracteres de espacio en
blanco
Ignorado por el compilador
Comienza declaracin de clase para
la clase Welcome1
Cada programa Java tiene al menos
una clase definida por el usuario
Palabra clave: palabras reservadas
para uso de Java
clase de palabras clave seguida
por el nombre de clase
Nombrar clases: capitalizar cada
palabra
SampleClassName
2.2 Un programa simple: imprimir
una lnea de texto
3

4 public class {Welcome1

2003 Prentice Hall, Inc. Todos los derechos reservados.

2.2 Un programa simple: imprimir


una lnea de texto
Nombre de la clase llamada
identificador
Serie de caracteres formada por
letras, dgitos,
subrayados (_) y signos de dlar ($)
No comienza con un dgito, no tiene
espacios
Ejemplos: Welcome1, valor $, _value
, button7
7button no es vlido
Java es sensible a maysculas y
minsculas (maysculas)
A1 y A1 son diferentes
Por captulos 2 a 7, use palabras
clave pblica
Algunos detalles no son importantes
ahora
Imitar ciertas caractersticas,
discusiones ms adelante
4 public class {Welcome1

2003 Prentice Hall, Inc. Todos los derechos reservados.

2.2 Un programa simple: imprimir


una lnea de texto
Guardando archivos
Nombre del archivo debe ser el
nombre de la clase con la extensin .java
Welcome1.java
Llave izquierda {
Comienza el cuerpo de cada clase
Declaraciones de la llave derecha
(lnea 13)
Parte de cada aplicacin Java
Aplicaciones comenzar a ejecutar en
el principal
Parntesis indican principal es un
mtodo (cap. 6)
Las aplicaciones Java contienen
uno o ms mtodos
4 public class {Welcome1

7 void Main (args String []) public static

2003 Prentice Hall, Inc. Todos los derechos reservados.

2.2 Un programa simple: imprimir


una lnea de texto
Exactamente un mtodo debe ser
llamado principal
o Los mtodos pueden realizar tareas y
devolver informacin
vaco significa principal vuelve
ninguna informacin
Por ahora, la primera
lnea imitan principal 's
El brazo izquierdo comienza la
declaracin del cuerpo de mtodo
Terminada por llave de cierre} (lnea
11)
7 void Main (args String []) public static

8{

2003 Prentice Hall, Inc. Todos los derechos reservados.

10

2.2 Un programa simple: imprimir


una lnea de texto
Indica a la computadora que realice
una accin
Imprime una serie de caracteres
Cadena - caracteres de la serie
dentro de comillas dobles
Los espacios en blanco en las
cadenas no son ignorados por el
compilador
Sistema fuera
Objeto de salida estndar
Imprimir en la ventana de comandos
(es decir, MS-DOS)
mtodo System.out.println
Muestra lnea de texto
Argumento dentro del parntesis
Esta lnea conocida como una
declaracin
Declaraciones debe terminar con
punto y coma;
9 System.out.println ( "Bienvenido a Java de programacin!");

2003 Prentice Hall, Inc. Todos los derechos reservados.

11

2.2 Un programa simple: imprimir


una lnea de texto
Finaliza la declaracin del mtodo
Finaliza la declaracin de clase
Puede aadir comentarios para
realizar un seguimiento de los terminales
finales
Las lneas 8 y 9 podran reescribirse
como:
Recuerde, el compilador ignora los
comentarios
Los comentarios pueden comenzar en
la misma lnea despus del cdigo
11} // mtodo principal final

13} // fin de la clase Welcome1

2003 Prentice Hall, Inc. Todos los derechos reservados.

12

2.2 Un programa simple: imprimir


una lnea de texto
Compilacin de un programa

Abra una ventana de smbolo del


sistema, vaya al directorio donde se
almacena el programa
tipo javac Welcome1.java
Si no hay
errores, Welcome1.class creado
Tiene bytecodes que representan la
aplicacin
Bytecodes pas a intrprete de Java
2003 Prentice Hall, Inc. Todos los derechos reservados.

13

2.2 Un programa simple: imprimir


una lnea de texto
Ejecutar un programa
Tipo Java Bienvenido1
Archivo .class cargas de
intrprete para la clase Welcome1
extensin .class omitido de comandos
Intrprete llama al mtodo principal
Fig. 2.2 Ejecucin de Welcome1 en un smbolo del sistema de
Microsoft Windows 2000.
2003 Prentice Hall, Inc. Todos los derechos reservados.

14

2.3 Modificacin de nuestro primer


programa Java
Modifique el ejemplo en la Fig.
2.1 para imprimir el mismo
contenido usando cdigo diferente
2003 Prentice Hall, Inc. Todos los derechos reservados.

15

2.3 Modificacin de nuestro primer


programa Java
Modificacin de programas

Welcome2.java (Fig. 2.3) produce la


misma salida que Welcome1.java (Fig.
2.1)
Uso de cdigo diferente
La lnea 9 muestra el
mensaje Bienvenido a con el cursor
queda en lnea impresa
La lnea 10 muestra el
mensaje Programacin Java! En la
misma lnea con el cursor en la lnea
siguiente
9 System.out.print ( "Bienvenido a");

10 System.out.println ( "Programacin Java!");

2003 Prentice Hall, Inc.

Todos los derechos reservados.

contorno
diecisis

Welcome2.java

1. Comentarios

2. Lnea en blanco

3. Para comenzar la clase Welcome2

3.1 Mtodo principal

4. Mtodo System.out.print

4.1 Mtodo System.out.println

5. principal final, Bienvenido2

Salida del programa


Bienvenido a Java Programming!

. 1 // Fig 2.3: Welcome2.java

2 // Impresin de una lnea de texto con varias instrucciones.


3

4 public class {Welcome2

6 // mtodo principal inicia la ejecucin de la aplicacin Java

7 void Main (args String []) public static

8{

9 System.out.print ( "Bienvenido a");

10 System.out.println ( "Programacin Java!");

11

12} // mtodo principal final

13

14} // fin de la clase Welcome2

System.out.print mantiene el cursor en la misma lnea, por lo que


System.out.println Contina en la misma lnea.
2003 Prentice Hall, Inc. Todos los derechos reservados.

17

2.3 Modificacin de nuestro primer


programa Java
Caracteres de nueva lnea (\ n)
Interpretado
como caracteres especiales por
mtodos System.out.print y System.out.pri
ntln
Indica que el cursor debe estar en la
siguiente lnea
Welcome3.java (Fig. 2.4)
Saltos de lnea en \ n
Uso
Puede utilizar
en System.out.println o System.out.print p
ara crear nuevas lneas
System.out.println ( "Bienvenido \ na
\ nJava \ nProgramacin!" );
9 System.out.println ( "Bienvenido \ na \ nJava \ nProgramming!");

2003 Prentice Hall, Inc.

Todos los derechos reservados.

contorno
18

Welcome3.java
1. principal

2. System.out.println (utiliza \ n para la nueva lnea)

Salida del programa

. 1 // Fig 2.4: Welcome3.java

2 // Impresin de varias lneas de texto con una sola instruccin.

4 public class {welcome3

6 // mtodo principal inicia la ejecucin de la aplicacin Java

7 void Main (args String []) public static

8{

9 System.out.println ( "Bienvenido \ na \ nJava \ nProgramming!");

10

11} // mtodo principal final

12
13} // fin de la clase welcome3

Bienvenido

Java

Programacin!

Observe cmo se genera una nueva lnea para cada secuencia de


escape \ n.
2003 Prentice Hall, Inc. Todos los derechos reservados.

19

2.3 Modificacin de nuestro primer


programa Java
Caracteres de escape
Barra inversa (\)
Indica que los caracteres especiales se
emiten
2003 Prentice Hall, Inc. Todos los derechos reservados.

20

2.4 Visualizacin de texto en un


cuadro de dilogo
Monitor
La mayora de las aplicaciones Java
utilizan ventanas o un cuadro de dilogo
Hemos utilizado la ventana de
comandos
Clase JOptionPane nos permite
utilizar los cuadros de dilogo
Paquetes
Conjunto de clases predefinidas para
usar
Grupos de clases relacionadas
llamados paquetes
Grupo de todos los paquetes
conocidos como biblioteca de clases Java
o interfaz de programacin de
aplicaciones Java (Java API)
JOptionPane est en
el paquete javax.swing
El paquete tiene clases para el uso de
Interfaces Grficas de Usuario (GUIs)
2003 Prentice Hall, Inc. Todos los derechos reservados.

21
2.4 Visualizacin de texto en un
cuadro de dilogo
2003 Prentice Hall, Inc. Todos los derechos reservados.

22

2.4 Visualizacin de texto en un


cuadro de dilogo
Prximos programas
Aplicacin que utiliza cuadros de
dilogo
Explicacin vendr despus
Demuestra otra forma de mostrar la
salida
Paquetes, mtodos y GUI
2003 Prentice Hall, Inc.

Todos los derechos reservados.

contorno
23

Welcome4.java

1. declaracin de importacin
2. Clase Welcome4

2.1 principal

2.2 showMessageDialog

2.3 System.exit

Salida del programa


. 1 // Fig 2.6: Welcome4.java

2 // Impresin de varias lneas en un cuadro de dilogo

Javax.swing.JOptionPane 3 importacin; // clase de importacin JOptionPane

5 public class {Welcome4

6 void Main (args String]) public static

7{

8 JOptionPane.showMessageDialog (

9 nula, "Bienvenido \ na \ nJava \ nProgramming!" );

10

11 System.exit (0); // finalizar el programa


12}

. 1 // Fig 2.6: Welcome4.java

2 // Impresin de varias lneas en un cuadro de dilogo.

4 // paquetes Java

Javax.swing.JOptionPane 5 importacin; // programa utiliza JOptionPane

7 public class {Welcome4

9 // mtodo principal inicia la ejecucin de la aplicacin Java

10 void Main (args String []) public static

11 {

12 JOptionPane.showMessageDialog (

13 null, "Bienvenido \ na \ nJava \ nProgramming!" );

14

15 System.exit (0); // finaliza la aplicacin con ventana

diecisis

17} // mtodo principal final

18

19} // fin de la clase Welcome4


2003 Prentice Hall, Inc. Todos los derechos reservados.

24

2.4 Visualizacin de texto en un


cuadro de dilogo
Lneas 1-2: comentarios como antes
Dos grupos de paquetes en Java API
Paquetes principales
Comience con java
Incluido con Java 2 Software
Development Kit
Paquetes de extensin
Comience con javax
Nuevos paquetes Java
declaraciones de importacin
Utilizado por el compilador para
identificar y localizar clases usadas en
programas Java
Le dice al
compilador JOptionPane clase de
carga del paquete de javax.swing
4 // paquetes Java

Javax.swing.JOptionPane 5 importacin; // programa utiliza OptionPane


2003 Prentice Hall, Inc. Todos los derechos reservados.

25

2.4 Visualizacin de texto en un


cuadro de dilogo
Lneas 6-11: Lnea en blanco,
comienzan clase Welcome4 y principal
Mtodo de
llamada showMessageDialog de
clase JOptionPane
Requiere dos argumentos
Mltiples argumentos separados por
comas (,)
Por ahora, el primer argumento
siempre es NULL
El segundo argumento es la cadena a
mostrar
showMessageDialog es
un mtodo esttico de JOptionPane clase
mtodos estticos llamados usando
nombre de la clase, de punto (.), entonces
el nombre del mtodo
12 JOptionPane.showMessageDialog (

13 null, "Bienvenido \ na \ nJava \ nProgramming!" );

2003 Prentice Hall, Inc. Todos los derechos reservados.

26

2.4 Visualizacin de texto en un


cuadro de dilogo
Todas las declaraciones
terminan con;
Una sola sentencia puede abarcar
varias lneas
No se puede dividir la sentencia en
medio de identificador o cadena
La ejecucin de las lneas 12 y 13
muestra el cuadro de dilogo
Incluye automticamente
un botn Aceptar
Cubre o rechaza el cuadro de
dilogo
Barra de ttulo tiene cadena de
mensaje
2003 Prentice Hall, Inc. Todos los derechos reservados.
27

2.4 Visualizacin de texto en un


cuadro de dilogo
Llama al mtodo esttico de la
salida del sistema de clases
Finaliza la aplicacin
Utilizar con cualquier aplicacin
que muestre una GUI
Debido a que el mtodo
es esttico, necesita el nombre de la clase
y punto (.)
Los identificadores que comienzan
con letras maysculas usualmente
nombres de clases
Argumento de 0 significa que la
aplicacin termin con xito
Por lo general, un valor distinto de
cero significa que se produjo un error
Sistema de clasificacin de parte del
paquete java.lang
Sin declaracin de importacin sea
necesario
java.lang importados
automticamente en cada programa Java
Lneas 17-19: llaves para
terminar Welcome4 y principal
15 System.exit (0); // finaliza la aplicacin con ventana

2003 Prentice Hall, Inc. Todos los derechos reservados.

28

2.5 Otra aplicacin Java: Aadir


nmeros enteros
Prximos programas
Utilice dilogos de entrada para
ingresar dos valores del usuario
Utilice el cuadro de dilogo de
mensajes para mostrar la suma de los dos
valores
2003 Prentice Hall, Inc.

Todos los derechos reservados.

contorno
29
Adicin java

1. importacin

2. Adicin de clases

2.1 Declarar variables (nombre y tipo)

3. showInputDialog

4. parseInt

5. Aadir los nmeros, resultado puesto en suma


. 1 // Fig 2.9: Addition.java

2 // programa de adicin que muestra la suma de dos nmeros.

4 // paquetes Java

Javax.swing.JOptionPane 5 importacin; // programa utiliza JOptionPane

7 public class {Adicin

8
9 // mtodo principal comienza la ejecucin de aplicaciones Java

10 void Main (args String []) public static

11 {

12 FirstNumber cadena; // primera cadena introducida por el usuario

13 secondNumber cadena; // segunda cadena introducida por el usuario

14

15 int number1; // primer nmero a aadir

diecisis int number2; // segundo nmero a aadir

17 int suma; // suma de nmero1 y nmero2

18

19 // leer en primer nmero de usuario como una cadena

20 FirstNumber = JOptionPane.showInputDialog ( "Enter primer entero");

21

22 // leer en segundo nmero de usuario como una cadena

23 secondNumber =

24 JOptionPane.showInputDialog ( "Enter segundo nmero entero");

25

26 // convertir nmeros de tipo String a tipo int

27 number1 = Integer.parseInt (FirstNumber);

28 number2 = Integer.parseInt (secondNumber);


29

30 // aadir nmeros

31 suma = number1 + number2;

32

Declare variables: nombre y tipo.


Introduzca el primer entero como String, asigne a firstNumber.
Aadir, colocar el resultado en suma.
Convertir cadenas a enteros.
2003 Prentice Hall, Inc.

Todos los derechos reservados.

contorno
30

Salida del programa


33 // resultado de visualizacin

34 JOptionPane.showMessageDialog (null, "La suma es" + suma,

35 "Resultados", JOptionPane.PLAIN_MESSAGE);
36

37 System.exit (0); // finaliza la aplicacin con ventana

38

39} // mtodo principal final

40

41} // fin de la clase Adicin

2003 Prentice Hall, Inc. Todos los derechos reservados.

31

2.5 Otra aplicacin Java: Aadir


nmeros enteros
Localizacin de JOptionPane para su
uso en el programa
Comienza adicin clase pblica
Recordemos que el nombre del
archivo debe ser Addition.java
Lneas 10-11: principales
Declaracin
FirstNumber y secondNumber son
variables
Javax.swing.JOptionPane 5 importacin; // programa utiliza JOptionPane
7 public class {Adicin

12 FirstNumber cadena; // primera cadena introducida por el usuario

13 secondNumber cadena; // segunda cadena introducida por el usuario

2003 Prentice Hall, Inc. Todos los derechos reservados.

32

2.5 Otra aplicacin Java: Aadir


nmeros enteros
Variables
Ubicacin en memoria que almacena
un valor
Declare con nombre y tipo antes
de usar
FirstNumber y secondNumber son de
tipo String (paquete java.lang)
Hold strings
Nombre de la variable: cualquier
identificador vlido
Declaraciones terminan con un punto
y coma;
Puede declarar mltiples
variables del mismo tipo cada vez
Usar una lista separada por
comas
o Puede agregar comentarios para
describir el propsito de las variables
String firstNumber, secondNumber;

12 FirstNumber cadena; // primera cadena introducida por el usuario

13 secondNumber cadena; // segunda cadena introducida por el usuario

2003 Prentice Hall, Inc. Todos los derechos reservados.

33

2.5 Otra aplicacin Java: Aadir


nmeros enteros
Declara las
variables nmero1, nmero2, y suma de
tipo int
int tiene valores enteros (nmeros
enteros): es decir, 0, -4, 97
Tipos float y double pueden contener
nmeros decimales
Tipo char puede contener un solo
carcter: es decir, x, $, \ n, 7
Tipos primitivos - ms en el Captulo
4
15 int number1; // primer nmero a aadir

diecisis int number2; // segundo nmero a aadir

17 int suma; // suma de nmero1 y nmero2

2003 Prentice Hall, Inc. Todos los derechos reservados.

34

2.5 Otra aplicacin Java: Aadir


nmeros enteros
Lee una cadena desde el usuario, lo
que representa el primer nmero que se
aaden
Mtodo JOptionPane.showInputDial
og muestra lo siguiente:
Mensaje llamado aviso: dirige al
usuario a realizar una accin
El argumento aparece como texto
rpido
Si un tipo incorrecto de los datos
introducidos (no entero), o cancele, se
produce un error
20 FirstNumber = JOptionPane.showInputDialog ( "Enter primer entero");

2003 Prentice Hall, Inc. Todos los derechos reservados.

35

2.5 Otra aplicacin Java: Aadir


nmeros enteros
Resultado de la llamada
a showInputDialog dado
a FirstNumber utilizando operador de
asignacin =
Sentencia de asignacin
= Operador binario - toma dos
operandos
Expresin a la derecha evaluada
y asignada a la variable a la
izquierda
Leer como: FirstNumber obtiene un
valor de JOptionPane.showInputDialog (
"Enter primer entero")
20 FirstNumber = JOptionPane.showInputDialog ( "Enter primer entero");

2003 Prentice Hall, Inc. Todos los derechos reservados.

36

2.5 Otra aplicacin Java: Aadir


nmeros enteros
Similar a la declaracin anterior
Asigna secondNumber variable para
segunda entrada de nmero entero
mtodo Integer.parseInt
Convierte argumento cadena en un
nmero entero (tipo int)
Clase de enteros en java.lang
Entero devuelto
por Integer.parseInt se asigna
a number1 variable (lnea 27)
Recuerde que n1 fue declarado
como tipo int
Lnea 28 similar
23 secondNumber =

24 JOptionPane.showInputDialog ( "Enter segundo nmero entero");


27 number1 = Integer.parseInt (FirstNumber);

28 number2 = Integer.parseInt (secondNumber);

2003 Prentice Hall, Inc. Todos los derechos reservados.

37

2.5 Otra aplicacin Java: Aadir


nmeros enteros
Sentencia de asignacin
Calcula la suma
de number1 y number2 (lado derecho)
Utiliza operador de
asignacin = asignar resultado a la
variable sum
Leer como: suma obtiene el valor
de + n1 n2
n1 y n2 Son operandos
31 suma = number1 + number2;

2003 Prentice Hall, Inc. Todos los derechos reservados.

38

2.5 Otra aplicacin Java: Aadir


nmeros enteros
Utilice showMessageDialog para
mostrar los resultados
"Los suma es " + suma
Utiliza el operador + a "aadir" la
cadena literal "La suma es" y suma
La concatenacin de una cadena y
otro tipo
Resultados en una nueva cadena
Si suma contiene 117, a
continuacin, "El suma es " + resultados d
e suma en la nueva
cadena "El suma es 117 "
Tenga en cuenta el espacio
en "The suma es "
Ms informacin sobre las cadenas
en el Captulo 11
34 JOptionPane.showMessageDialog (null, "La suma es" + suma,

35 "Resultados", JOptionPane.PLAIN_MESSAGE);

2003 Prentice Hall, Inc. Todos los derechos reservados.

39
2.5 Otra aplicacin Java: Aadir
nmeros enteros
Versin diferente
de showMessageDialog
Requiere cuatro argumentos (en
lugar de dos como antes)
Primer argumento: nula por ahora
Segundo: cadena para mostrar
Tercero: cadena en la barra de ttulo
Cuarto: tipo de dilogo de mensaje
con el icono
Lnea 35 ningn
icono: JOptionPane.PLAIN_MESSA
GE
34 JOptionPane.showMessageDialog (null, "La suma es" + suma,

35 "Resultados", JOptionPane.PLAIN_MESSAGE);

2003 Prentice Hall, Inc. Todos los derechos reservados.

40

2.5 Otra aplicacin Java: Aadir


nmeros enteros
2003 Prentice Hall, Inc. Todos los derechos reservados.

41

2.6 Conceptos de memoria


Variables
Cada variable tiene un nombre, un
tipo, un tamao y un valor
El nombre corresponde a la
ubicacin en la memoria
Cuando se coloca un nuevo valor en
una variable, reemplaza (y destruye) el
valor anterior
Leer las variables de la memoria no
las cambia
2003 Prentice Hall, Inc. Todos los derechos reservados.

42

2.6 Conceptos de memoria


Representacin visual
Sum = 0; Nmero 1 = 1; Nmero 2 =
2;
Sum = nmero1 + nmero2; Despus
de la ejecucin de la declaracin
suma
0
suma
3
2003 Prentice Hall, Inc. Todos los derechos reservados.

43

2.7 Aritmtica
Clculos aritmticos utilizados
en la mayora de los programas
Uso
* Para la multiplicacin
/ Para la divisin
+, -
Ningn operador para la
exponenciacin (ms en el Captulo 5)
La divisin entera trunca el resto
7/5 equivale a 1
Operador resto% devuelve el resto
7% 5 equivale a 2
2003 Prentice Hall, Inc. Todos los derechos reservados.

44

2.7 Aritmtica
Prioridad del operador
Algunos operadores aritmticos
actan antes que otros (es decir, la
multiplicacin antes de la adicin)
Utilice parntesis cuando sea
necesario
Ejemplo: Encuentre el promedio de
tres variables una, b y c
No utilice: A + b + c / 3
Uso: (a + b + c) / 3
siguiente PEMDAS
Parntesis, Exponentes,
Multiplicacin, Divisin, Adicin, Resta
2003 Prentice Hall, Inc. Todos los derechos reservados.

45

2.7 Aritmtica
2003 Prentice Hall, Inc. Todos los derechos reservados.

46

2.8 Toma de Decisiones: Operadores


de Igualdad y Relacional
si la declaracin de control
Versin simple en esta seccin, ms
detalle ms adelante
Si una condicin es verdadera,
entonces el cuerpo de la sentencia
ejecutada si
0 interpretarse como falsa, no nulo es
cierto
De control siempre se reanuda
despus de que la estructura if
Condiciones para si las declaraciones
se pueden formar usando la igualdad o
los operadores relacionales (siguiente
diapositiva)
Si (condicin)
Declaracin ejecutada si la condicin es
verdadera
No es necesario punto y coma
despus de la condicin
Otra tarea condicional no
realizada
2003 Prentice Hall, Inc. Todos los derechos reservados.

47

2.8 Toma de Decisiones: Operadores


de Igualdad y Relacional
Prximo programa utiliza si las

declaraciones
Discusin posterior
2003 Prentice Hall, Inc.

Todos los derechos reservados.

contorno
48

Comparison.java

1. importacin
2. Comparacin de Clase

2.1 principal

2.2 Declaraciones

2.3 Datos de entrada (showInputDialog)

2.4 parseInt

2,5 resultado Inicializar


. 1 // Fig 2,20: Comparison.java

2 // Comparar nmeros enteros utilizando si las declaraciones, los operadores relacionales

3 // y la igualdad de los operadores.

5 // paquetes Java

Javax.swing.JOptionPane 6 importacin;

8 Comparacin public class {

9
10 // mtodo principal comienza la ejecucin de aplicaciones Java

11 void Main (args String []) public static

12 {

13 FirstNumber cadena; // primera cadena introducida por el usuario

14 secondNumber cadena; // segunda cadena introducida por el usuario

15 resultado de cuerdas; // una cadena que contiene la salida

diecisis

17 int number1; // primer nmero a comparar

18 int number2; // segundo nmero para comparar

19

20 // leer primer nmero de usuario como una cadena

21 FirstNumber = JOptionPane.showInputDialog ( "Enter primer entero:");

22

23 // leer segundo nmero de usuario como una cadena

24 secondNumber =

25 JOptionPane.showInputDialog ( "Enter segundo nmero entero:");

26

27 // convertir los nmeros de tipo String de tipo int

28 number1 = Integer.parseInt (FirstNumber);

29 number2 = Integer.parseInt (secondNumber);


30

31 // inicializar resultado de vaciar Cadena

32 resultado = "";

33

2003 Prentice Hall, Inc.

Todos los derechos reservados.

contorno
49

Comparison.java

3. si las declaraciones

4. showMessageDialog
34 si (nmero1 == number2)

35 resultado = resultado + number1 + "==" + number2;

36

37 si (nmero1! = n2)

38 resultado = resultado + + + n1 n2 "=";

39

40 si (nmero1 <number2)
41 resultado = resultado + "\ n" + number1 + "<" + number2;

42

43 si (nmero1> n2)

44 resultado = resultado + "\ n" + number1 + ">" + number2;

45

46 si (nmero1 <= number2)

47 resultado = resultado + "\ n" + number1 + "<=" + number2;

48

49 si (nmero1> = number2)

50 resultado = resultado + "\ n" + number1 + "> =" + number2;

51

52 // Mostrar resultados

53 JOptionPane.showMessageDialog (null, resultado "resultados de la comparacin",

54 JOptionPane.INFORMATION_MESSAGE);

55

56 System.exit (0); // finalizar la aplicacin

57

58} // mtodo principal final

59

60} // Comparacin fin de la clase


Pruebe la igualdad, cree una nueva cadena, asigne al resultado.
Observe el uso de JOptionPane.INFORMATION_MESSAGE
2003 Prentice Hall, Inc.

Todos los derechos reservados.

contorno
50

Salida del programa


2003 Prentice Hall, Inc. Todos los derechos reservados.

51

2.8 Toma de Decisiones: Operadores


de Igualdad y Relacional
Lneas 1-12:
Comentarios, importacin JOptionPane, c
omenzar clase de comparacin y principa
l
Lneas 13-18: declarar variables
Puede usar listas separadas por
comas en su lugar:
Lneas 21-30: obtenga nmeros de
entrada de usuario y analiza la cadena de
entrada en variables enteras
13 Cadena FirstNumber,

14 secondNumber,

15 resultado;

2003 Prentice Hall, Inc. Todos los derechos reservados.

52

2.8 Toma de Decisiones: Operadores


de Igualdad y Relacional
Inicializar el resultado con cadena
vaca
if para comprobar la igualdad
usando (==)
Si las variables son iguales
(condicin verdadera)
resultado concatenado
usando + operador
Resultado = resultado + otras
cadenas
Lado derecho evala en primer
lugar, la nueva cadena asignada
a resultar
Si las variables no son iguales, la
sentencia omitida
32 resultado = "";

34 si (nmero1 == number2)

35 resultado = resultado + number1 + "==" + number2;

2003 Prentice Hall, Inc. Todos los derechos reservados.

53

2.8 Toma de Decisiones: Operadores


de Igualdad y Relacional
Lneas 37-50: otra si la prueba
declaraciones por menos, ms, etc.
Si number1 = 123 y number2 = 123
La lnea 34 evala true (si
number1 = = nmero 2)
Porque number1 es igual a
number2
La lnea 40 evala false (si
number1 <nmero 2)
Debido a que number1 no es
menor que number2
La lnea 49 evala true (si
number1> = number2)
Debido a que number1 es
mayor o igual que number2
Lneas 53-
54: resultado que se muestran en un
cuadro de dilogo
usando showMessageDialog
2003 Prentice Hall, Inc. Todos los derechos reservados.

54

2.8 Toma de Decisiones: Operadores


de Igualdad y Relacional
Precedencia de operadores
Todos los operadores
excepto = asociadas (asignacin) de
izquierda a derecha
Por ejemplo: x = y = z se evala x =
(y = z)
2003 Prentice Hall, Inc. Todos los derechos reservados.

55
2.9 (Estudio de Caso Opcional)
Pensando en Objetos: Examinando
la Declaracin del Problema
Enfatizar la programacin
orientada a objetos (OOP)
Implementacin de diseo
orientado a objetos (OOD)
Captulos 3 a 14, 16, 19
Apndices D, E, F
2003 Prentice Hall, Inc. Todos los derechos reservados.

56

2.9 (Estudio de Caso Opcional)


Pensando en Objetos: Examinando
la Declaracin del Problema
Objetivo del programa
Aplicacin de simulador de software
Simulador de ascensor de 2 pisos
Modelos de operacin de ascensor
real
Grficos de ascensor mostrados al
usuario
Interfaz grfica de usuario (GUI)
El usuario puede controlar el
ascensor
2003 Prentice Hall, Inc. Todos los derechos reservados.

57

2.9 (Estudio de Caso Opcional)


Pensando en Objetos: Examinando
la Declaracin del Problema
Simulacin de ascensor
Modelo de personas con el ascensor
Puerta del ascensor, puerta del piso,
botn del elevador, botn del piso, eje del
elevador, campana, piso, fondos
Operar en consecuencia o por la
peticin para evitar herir persona y
hacer operaciones intiles
Crear objetos persona
Reglas de simulacin
Ascensor visitas piso que la persona
solicita servicio de ascensor
Una persona por ascensor
5 segundos para moverse de los pisos
2003 Prentice Hall, Inc. Todos los derechos reservados.

58

2.9 (Estudio de Caso Opcional)


Pensando en Objetos: Examinando
la Declaracin del Problema
GUI de aplicaciones
Primer
Piso / segundo botones de las plantas cre
an persona en los pisos respectivos
Deshabilitar el botn si el piso ya
est ocupado por una persona
Nmero ilimitado de creaciones de
pasajeros
Requisitos de animacin
Pasajero caminando y presionando el
botn del suelo
Ascensor en movimiento, puertas de
apertura y cierre
Iluminacin de luces y botones del
ascensor durante el funcionamiento
Incorporacin de sonidos
Pasos cuando la persona camina
Botn pulsando clics
Ascensor campana anillos en la
llegada del ascensor, msica de ascensor
Las puertas crujen al abrir y cerrar
2003 Prentice Hall, Inc. Todos los derechos reservados.

59

2.9 (Estudio de Caso Opcional)


Pensando en los Objetos:
Examinando la Declaracin del
Problema
2003 Prentice Hall, Inc. Todos los derechos reservados.

60

2.9 (Estudio de Caso Opcional)


Pensando en los Objetos:
Examinando la Declaracin del
Problema
2003 Prentice Hall, Inc. Todos los derechos reservados.

61

2.9 (Estudio de Caso Opcional)


Pensando en los Objetos:
Examinando la Declaracin del
Problema
2003 Prentice Hall, Inc. Todos los derechos reservados.

62

2.9 (Estudio de Caso Opcional)


Pensando en los Objetos:
Examinando la Declaracin del
Problema
Diseo del sistema de ascensores
Especificado en el documento de
requisitos a travs del anlisis OOD
UML
Diseo utilizado para implementar
cdigo Java
Cmo se debe construir el sistema para
completar las tareas
Estructura del sistema
El sistema es un conjunto de
componentes interactivos para resolver
problemas
Simplificado por subsistemas
Simulador (a travs del captulo
16), GUI (captulos 13 y 14, pantalla
(captulo 22)
Describe los objetos del sistema 's e
interrelaciones
El comportamiento del sistema describe
cmo cambia el sistema a travs de la
interaccin de objetos
2003 Prentice Hall, Inc. Todos los derechos reservados.

63

2.9 (Estudio de Caso Opcional)


Pensando en Objetos: Examinando
la Declaracin del Problema
Tipos de diagramas UML
Estructura del sistema
Diagrama de clases (seccin 3.7)
Clases de modelos,
o bloques de construccin de un
sistema de
Persona, ascensor, piso, etc.
Diagramas de objetos (seccin 3.7)
Instantnea (modelo) de los
objetos y las relaciones del
sistema 's en el punto especfico en
el tiempo
Diagramas de componentes (seccin
14.13)
Componentes del modelo tales
como recursos grficos y paquetes
de clases que componen el sistema
Diagramas de implementacin (no
discutidos)
Modelo de hardware, memoria y
recursos de tiempo de ejecucin
2003 Prentice Hall, Inc. Todos los derechos reservados.

64

2.9 (Estudio de Caso Opcional)


Pensando en Objetos: Examinando
la Declaracin del Problema
Comportamiento del sistema
Diagramas de estado (seccin 5.11)
Modelo de cmo el objeto
cambia de estado
Condicin /
comportamiento de un objeto en
un momento especfico
Diagramas de actividad (seccin
5.11)
Orden de modelado de un
diagrama de flujo y acciones
realizadas por objeto
Diagramas de colaboracin (seccin
7.10)
Enfatizar qu interacciones
ocurren
Diagramas de secuencia (seccin
16.11)
Enfatizar cuando se producen
interacciones
Diagramas de casos de uso (seccin
13.17)
Representar la interaccin entre
usuario y sistema
Haciendo clic en el botn
del ascensor