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

Lenguaje de programación III Unidad I _ Fundamentos de programación Java

Crear una aplicación de consola con NetBeans IDE 8.1

1. Inicie el entorno de desarrollo de NetBeans

a. Menú Inicio
b. Todos los programas
c. NetBeans
d. NetBeans IDE 8.1

2. En el IDE, abra el menú File (Archivo) y elija New Project (Nuevo Proyecto), como se
muestra en la siguiente figura.

3. En la página Choose Project (Seleccionar proyecto) del asistente New Project (Proyecto
Nuevo), en Categories (Categorías) seleccione la categoría Java y en Projects (Proyectos)
seleccione Java Application (Aplicación Java), como se muestra en la siguiente figura, y luego
haga clic en el botón Next (Siguiente).

4. En la página Name and Location (Nombre y ubicación) del asistente, haga lo siguiente
(como se muestra en la figura a continuación):

 En el campo Project Name (Nombre del proyecto) ingrese el nombre del proyecto
(por ejemplo: Bienvenidos).

 En Project Location (Ubicación del Proyecto) ingresar la ubicación de la carpeta


generada por el asistente con el mismo nombre dado al proyecto (o hacer clic en el botón
Browse (Examinar) para seleccionar dicha ubicación).

 En el campo Create Main Class (Crear clase principal) muestra el nombre del
paquete y el nombre de la clase que se generará bienvenidos.Bienvenidos. La nomenclatura
de java establece que los nombres de paquete comienzan con letra minúsculas y los nombres
de clase con letra mayúscula
Ing. Nieves Ascanio H.
Lenguaje de programación III Unidad I _ Fundamentos de programación Java

 Hacer clic en el botón Finish (Terminar).

El proyecto se crea y se abre en el IDE mostrando los componentes siguientes:

 La ventana Projects (Proyectos) que contiene una vista del árbol de los componentes del
proyecto incluyendo el archivo fuente Bienvenidos.java, bibliotecas de las que depende su
código, y así sucesivamente.

 La ventana Source Editor (Editor de Fuente) con el código del archivo


Bienvenidos.java

 La ventana Navigator, (Navegador) que permite ir rápidamente a uno de los elementos


dentro de la clase seleccionada en la ventana Projects, haciendo doble clic sobre dicho
elemento.

5. Agregar código al archivo fuente generado

Una clase principal es aquella que contiene un método main(). Cuando se ejecuta la aplicación la
ejecución comienza en el método main().

Como se dejó seleccionada la casilla Create Main Class (Crear clase principal), el IDE ha
creado la clase Bienvenidos, la cual contiene el método main (principal).
Ing. Nieves Ascanio H.
Lenguaje de programación III Unidad I _ Fundamentos de programación Java

/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package bienvenidos;
/**
*
* @author equipo
*/
public class Bienvenidos {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
}
}

El código de la aplicación se inserta debajo del comentario:

// TODO code application logic here

Si se requiere enlazar paquetes de la biblioteca de Java con el código fuente, las sentencias para
importarlos se colocan debajo de la sentencia:

package bienvenidos;

Ejemplo:

package bienvenidos;
import javax.swing.JOptionPane;
/**
*
* @author equipo
*/
public class Bienvenidos {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
JOptionPane.showMessageDialog(null, "Bienvenidos a Java");
System.exit(0);
}
}

6. Guardar el cambio eligiendo en el menú File (Archivo) la opción Save (Guardar) o pulse (Ctrl +
S).

7. Compilar el archivo fuente eligiendo en el menú Run (Ejecutar), la opción Build Project
(Bienvenidos) o pulse F11

Ing. Nieves Ascanio H.


Lenguaje de programación III Unidad I _ Fundamentos de programación Java

La ventana Output (Salida) abre y despliega una salida similar a lo que usted ve en la figura
siguiente:

Si la salida termina con BUILD SUCCESSFUL (GENERACIÓN CORRECTA) no hay errores de


sintaxis. Si la salida termina con BUILD FAILED, (GENERACIÓN INCORRECTA) existen errores de
sintaxis.

En la ventana Salida aparecen los errores. Para ir al punto del código donde está el error se hace
doble clic en el hipervínculo que describe el error.

Se corrigen los errores y se vuelve a compilar.

Cuando se construye el proyecto, se genera el archivo bytecode Bienvenidos.class. Se puede ver


donde se guardó el nuevo archivo abriendo la ventana Files (Archivos) y extendiendo el nodo
Bienvenidos/build/classes/bienvenidos como se muestra en la figura siguiente.

8. Ejecutar el proyecto eligiendo en el menú Run (Ejecutar), la opción Run Project


(Bienvenidos) o pulse F6

Cuando se ejecuta el proyecto Bienvenidos aparece un cuadro mensaje

Al hacer click en el botón Aceptar, la ventana Salida mostrará el contenido que se muestra en la
figura siguiente:

Ing. Nieves Ascanio H.


Lenguaje de programación III Unidad I _ Fundamentos de programación Java

Organización del software en Java

El software en Java se organiza en paquetes (package). Un paquete puede contener otros paquetes y
clases. Una clase contiene métodos.

Ejemplo:

Paquete javax

Paquete lang

Paquete sql

Paquete swing

Clase JButton

Clase JOptionPane

Método showInputDialog

Método showMessageDialog

Método showConfirmDialog

Nomenclatura Java (observe el esquema anterior)

Los nombres de paquetes se escriben con letras minúsculas.

El nombre de una clase puede contener varias palabras sin espaciar. La primera letra de cada palabra
va en mayúscula y las letras restantes en minúscula.

El nombre de un método puede contener varias palabras sin espaciar. La primera palabra va en letras
minúscula, la primera letra de la segunda y demás palabras en mayúsculas y las letras restantes en
minúsculas.
Ing. Nieves Ascanio H.
Lenguaje de programación III Unidad I _ Fundamentos de programación Java

Los nombres de constantes se escriben con letras mayúsculas

Para llamar a un método se debe indicar su ubicación. Por ejemplo:

javax.swing.JOptionPane.showInputDialog( “Ingrese el nombre” );

Para no tener que especificar los paquetes se usa la sentencia import:

import javax.swing.JOptionPane;

Colocando esta sentencia en la cabecera del programa, se pueden llamar todos los métodos de la
clase JOptionPane indicando sólo NombreClase.nombreMetodo()

Lenguaje de programación Java

Java es un lenguaje de programación orientado a objeto desarrollado por Sun Microsystem a


principios de los años 90. Las aplicaciones Java están típicamente compiladas en un bytecode,
aunque la compilación en código máquina nativo también es posible. En el tiempo de ejecución, el
bytecode es normalmente interpretado o compilado a código nativo para la ejecución, aunque la
ejecución directa por hardware del bytecode por un procesador Java también es posible.

El lenguaje en sí mismo toma mucha de su sintaxis de C y C++, pero tiene un modelo de objetos
más simple y elimina herramientas de bajo nivel, como punteros.

Sun Microsystems proporciona una implementación GNU General Public License de un compilador
Java (que genera el bytecode) y una máquina virtual Java (que interpreta el bytecode), conforme a
las especificaciones del Java Community Process, aunque la biblioteca de clases que se requiere
para ejecutar los programas Java no es software libre.

Tipos de datos

El tipo de dato describe el tipo de información que se almacenará en una variable de memoria, los
tipos de datos de Java se clasifican en numéricos, boleanos y caracter

Tipos de datos numéricos en Java


Tamaño
Tipo Números Mínimo valor Máximo valor
(Bytes)
byte -256 255 1
short -32768 32767 2
Entero
int -2147483648 2147483647 4
long -9223372036854775808 9223372036854775807 8
float -1.40239846e-45 3.40282347e38 4
Decimal
double -4.94065645841246544e-324 1.79769313486231570e308 8

Otros tipos de datos en Java


Tipo Descripción
char Se utiliza para almacenar un solo carácter. Java usa el set de caracteres
Ing. Nieves Ascanio H.
Lenguaje de programación III Unidad I _ Fundamentos de programación Java

Unicode, por consiguiente el tipo char requiere 2 bytes de memoria


boolean Son dos literales true y false
No es un tipo básico. Es una clase, que contiene los métodos que
String
permiten manejar cadenas de caracteres.

Declaración de variables

La sentencia para declarar variables tiene el siguiente formato:

TipoDato nombreVariable [, nombreVariable [ = constante | expresión] … ] ;


Ejemplos:
int nota ;
int x = 2, y = 3, k = x + y;
float tasa = 0.14F ;
float tasa = (float) 0.14;
float sueldo, sumaSueldo = 0.0f, sueldoPromedio ;
char sexo, respuesta = 'S' ;
String nombre, saludo = "Buenos días";

Se puede declarar varias variables en una misma sentencia separándolas con coma ( , )
Se puede declarar e iniciar una variable asignándole una constante o expresión
Las constantes decimales son consideradas por Java tipo double, por lo que para iniciar una variable
float se termina la constante con la letra f (mayúscula o minúscula) o se utiliza el cast (float) para
convertir double a float
Las constantes char van entre comillas simples
Las constantes String van entre comillas dobles

Entrada de datos

Para ingresar datos se puede utilizar el método showInputDialog, el cual muestra un diálogo con
una caja de texto

Para ello debemos hacer lo siguiente:

1. Agregar después de la sentencia package nombreProyecto; la sentencia:

Ing. Nieves Ascanio H.


Lenguaje de programación III Unidad I _ Fundamentos de programación Java

import javax.swing. JOptionPane ;


Esta instrucción permite invocar en nuestro programa, los métodos contenidos en las clase
JOptionPane.

2. Invocar al método showInputDialog(), de la clase JOptionPane del paquete swing, con una
sentencia que debe tener la siguiente sintaxis:

nombreVariable = JOptionPane.showInputDialog(“Mensaje de solicitud” [, Valor por defecto] );

El método showInputDialog devuelve un String, por consiguiente, si la variable que se va a leer


no es tipo String, se debe convertir el String devuelto, al tipo de dato de la variable, invocando
al método de conversión correspondiente.

Métodos para convertir cadenas de caracteres (String) a otros tipos de datos


Clase Método Descripción
Integer parseInt() Convierte a int
Float parseFloat() Convierte a float
Double parseDouble() Convierte a double

Ejemplos

nombre = JOptionPane.showInputDialog(“Ingrese el nombre”);

nota = Integer.parseInt (JOptionPane.showInputDialog(“Ingrese la nota”, 0));

precio = Float.parseFloat (JOptionPane.showInputDialog(“Ingrese el precio” , 0));

saldo = Double.parseDouble(JOptionPane.showInputDialog(“Ingrese el saldo”, 0));

sexo = JOptionPane.showInputDialog("Sexo: 1. Mujer 2. Hombre").charAt(0);

El último ejemplo permite extraer el primer carácter del String y guardarlo en una variable tipo char.

Los métodos Integer.parseInt(), Float.parseFloat() y Double.parseDouble() generan una excepción


(error en tiempo de ejecución) del tipo java.lang.NumberFormatException, si se hace click en los
botones Aceptar o Cancelar, estando la caja de texto vacía, o los caracteres ingresados no
representan un número.

Manejo de excepciones

Java implementa excepciones para facilitar la construcción de código robusto. Cuando ocurre un
error en un programa, el código que encuentra el error lanza una excepción, que se puede capturar y
recuperarse de ella. Java proporciona muchas excepciones predefinidas.

try{
// Código donde puede ocurrir una excepción
}

Ing. Nieves Ascanio H.


Lenguaje de programación III Unidad I _ Fundamentos de programación Java

catch(Exception e){
// Código que se ejecuta al capturar la excepción
}

Para capturar una excepción del tipo java.lang.NumberFormatException se puede implementar el


siguiente código:

float saldo =0;


do{
try{
saldo = Float.parseFloat(JOptionPane.showInputDialog("Ingrese el saldo"));
}
catch(NumberFormatException exc){
JOptionPane.showMessageDialog(null, "El valor ingresado no es válido");
saldo = -1;
}
}while (saldo<0); //Repite hasta que saldo sea mayor o igual a 0

Uso del método showConfirmDialog

Este método muestra un cuadro mensaje con botones, en los que el usuario puede hacer clic para
indicar su elección.

Para mostrar un cuadro ConfirmDialog se llama al método showConfirmDialog de la clase


JOptionPane del paquete swing, con la siguiente sintaxis:
nombreVariable = JOptionPane.showConfirmDialog(componentePadre,"Mensaje","Título", Botones, Tipo);

Donde

ComponentePadre Es el Frame (marco) donde se visualizará el MessageDialog, sino se va a


especificar uno, se coloca null

Mensaje Es el objeto a visualizar.

Título (opcional) Texto de la barra título

Ing. Nieves Ascanio H.


Lenguaje de programación III Unidad I _ Fundamentos de programación Java

Botones (opcional) Es el conjunto de botones a visualizar. Si no se especifica muestra los botones


Si, No y Cancelar

Tipo (opcional) Permite especificar el tipo de mensaje a través de un icono.

Ejemplo
respuesta = JOptionPane.showConfirmDialog(null, "¿Desea salir?", "Salida", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);

El método showConfirmDialog devuelve un int, de la siguiente manera: el primer botón devuelve


0, el segundo devuelve 1, el tercero 2 y así sucesivamente.

Salida de datos

Para mostrar los resultados podemos usar el método showMessageDialog.

Para ello debemos hacer lo siguiente:

1. Agregar después de la sentencia package nombreProyecto; la sentencia:

import javax.swing. JOptionPane ;

2. Invocar al método showMessageDialog, de la clase JOptionPane del paquete swing, con una
sentencia que debe tener la siguiente sintaxis:

JOptionPane.showMessageDialog(ComponentePadre, "Mensaje","Título",Tipo);

Donde:

ComponentePadre Es el Frame donde se visualizará el MessageDialog, sino se va a especificar


uno, se coloca null

Mensaje Es el objeto a visualizar, constantes y/o variables. Se concatenan con el


signo +

Título (opcional) Texto de la barra título

Tipo (opcional) Permite especificar el tipo mensaje a través de un icono.

Ejemplo:

JOptionPane.showMessageDialog(null, nombre + " obtuvo " + nota + " puntos", "Información", JOptionPane.INFORMATION_MESSAGE);

La sentencia anterior visualiza el siguiente cuadro

Ing. Nieves Ascanio H.


Lenguaje de programación III Unidad I _ Fundamentos de programación Java

Nota: nombre es un objeto de la clase String y nota es una variable tipo int en los cuales
previamente se guardaron los datos, solicitados con el método JOptionPane.showInputDialog(),

Ing. Nieves Ascanio H.


Lenguaje de programación III Unidad I _ Fundamentos de programación Java

Operadores

Se utilizan para realizar operaciones sobre una o más variables u objetos


Operadores usados en Java
Tipo Operador Descripción
Asignación = Asigna a la variable a la izquierda, un valor o el resultado de una expresión a la derecha p = s/n
++ Incremento c++ equivale a c = c + 1
-- Decremento d - - equivale a d = d - 1
* Multiplicación
Aritméticos / División
% Módulo (resto de la división) 4 % 2 resulta 0 9 % 5 resulta 4
+ Suma
- Resta
> Mayor que
>= Mayor que o igual a
< Menor que
Relacionales
<= Menor que o igual a
== Igual a
!= No igual a (diferente)
! No (NOT)
Lógicos && Y (AND)
|| O (OR)
+= Suma y asigna s += a equivale a s=s+a
-= Resta y asigna s -= d equivale a s=s-d
Aritméticos
asignadores *= Multiplica y asigna f *= x equivale a f=f *x
/= Divide y asigna p /= n equivale a p=p/n
%= Cálcula el módulo y asigna r %= 2 equivale a r = r % 2
& Y
^ O exclusiva (XOR)
| O
Sobre bits ~ Complemento a uno (NO)
<< Desplazamiento a la izquierda
>> Desplazamiento a la derecha
>>> Desplazamiento a la derecha y llenado con ceros
&= Y y asigna
|= O y asigna

Sobre bits ^= O exclusiva (XOR) y asigna


asignadores <<= Desplazamiento a la izquierda y asigna
>>= Desplazamiento a la derecha y asigna
>>>= Desplazamiento a la derecha y llenado con ceros y asigna
nombreVariable = Expresión booleana ? verdad : falso;
Condicional ?:
comision = venta > 1000 ? venta * 0.15f : venta * 0.10f;

Ing. Nieves Ascanio H.


Lenguaje de programación III Unidad I _ Fundamentos de programación Java

Sentencias de control de flujo

Sentencias selectivas

Sentencia if

Sintaxis:
if (expresión boleana){
sentencia 1 ;
}
else{
sentencia 2;
}

La sentencia if evalúa una expresión booleana, si el resultado es true (verdad) el control es


transferido a sentencia 1, si el resultado es false (falso) el control es transferido a sentencia 2. La
expresión booleana debe ir encerrada entre paréntesis. La cláusula else, es opcional.

Ejemplo

package sentencia_if ;
import javax.swing. JOptionPane;
public class MayorNumero {
public static void main(String[] args) {
/* Programa que determina el mayor de dos número
Si los números son iguales muestra un mensaje */
int numero1, numero2, mayor;
numero1 = Integer.parseInt(JOptionPane.showInputDialog("Ingrese el primer número"));
numero2 = Integer.parseInt(JOptionPane.showInputDialog("Ingrese el segundo número"));
if (numero1 == numero2){
JOptionPane.showMessageDialog(null, "Números iguales");
}
else{
if (numero1 > numero2){
mayor = numero1;
}
else{
mayor = numero2;
}
JOptionPane.showMessageDialog(null, "El mayor es " + mayor);
}
System.exit(0); //Libera la memoria usada por la aplicación
}
}

Ing. Nieves Ascanio H.


Lenguaje de programación III Unidad I _ Fundamentos de programación Java

Sentencia switch

Sintaxis:

switch (variable){

case CONSTANTE_1 :

sentencia;

break;

case CONSTANTE_2:

sentencia;

break;

default :

sentencia;

En la sentencia switch, se compara una variable con una lista de constantes. Si se encuentra una
coincidencia se ejecutan las sentencias que se asocian con la constante hasta que se encuentra un
break;, y luego el control pasa a la sentencia que sigue a la llave que cierra el switch. Si no se
encuentra ninguna coincidencia se ejecutan las sentencias que siguen a la cláusula default:, si ésta
no existe, el control pasa a la sentencia que sigue a la llave que cierra el switch.

 Un switch se puede usar para evaluar variables de tipo int o char

 Se puede agrupar constantes:

case 1:

case 2:

sentencia ;

break ;

 La cláusula dafault:, es opcional.

Ejemplo

/* Programa que calcula el descuento según la forma de pago: Efectivo y tarjeta débito 30%,
Cheque y cesta ticket 20%, Tarjeta crédito 10% */

Ing. Nieves Ascanio H.


Lenguaje de programación III Unidad I _ Fundamentos de programación Java

package sentencia_switch;
import javax.swing. JOptionPane;
public class Descuento {
public static void main(String[] args) {
int formaPago, unidades;
float precio, montoVenta, descuento = 0, montoCobrar;
formaPago = Integer.parseInt(JOptionPane.showInputDialog("Ingrese la forma de pago \n1.
Efectivo\n2. T. Débito\n3. Cheque\n4. Cesta ticket\n5. T. Crédito"));
unidades = Integer.parseInt(JOptionPane.showInputDialog("Ingrese cantidad de unidades",0));
precio = Float.parseFloat(JOptionPane.showInputDialog("Ingrese el precio",0));
montoVenta = unidades * precio;
switch (formaPago){
case 1:
case 2:
descuento = montoVenta * 0.30f;
break;
case 3:
case 4:
descuento = montoVenta * 0.20f;
break;
case 5:
descuento = montoVenta *0.10f;
break;
default :
JOptionPane.showMessageDialog(null, "Valor no válido para forma de pago");
System.exit(0);
}
montoCobrar = montoVenta - descuento;
JOptionPane.showMessageDialog(null, "Monto venta: " + montoVenta + "\nDescuento: " +
descuento + "\nMonto a cobrar: "+ montoCobrar );
System.exit(0); //Libera la memoria usada por la aplicación
}
}

Ing. Nieves Ascanio H.


Lenguaje de programación III Unidad I _ Fundamentos de programación Java

Sentencia if .... else .... if (escalonador)

Sintaxis:

if (expresión boleana){

sentencia;

else if (expresión boleana){

sentencia;

else{

sentencia;

La computadora evalúa las expresiones booleanas desde arriba descendiendo, cuando la evaluación
de una expresión booleana resulta verdad ejecuta la(s) sentencia(s) asociadas y salta las expresiones
booleanas restantes. Si ninguna expresión booleana es verdadera ejecuta las sentencias que siguen al
último else, si éste no existe el control se transfiere a la siguiente sentencia.

Esta sentencia es útil para evaluar una variable que toma un valor de una lista de valores o una
variable que satisface sólo un caso de varios posibles casos.

Ejemplo:

package sentencia_if_else_if;
import javax.swing. JOptionPane;
public class Descuento {
public static void main(String[] args) {
/* Programa que calcula el descuento según la forma de pago Efectivo y
tajeta débito 30%. Cheque y Cesta ticket 20%. Tarjeta crédito 10% */
int formaPago, unidades;
float precio, montoVenta, descuento = 0, montoCobrar;
formaPago = Integer.parseInt(JOptionPane.showInputDialog("Ingrese la forma de pago \n1.
Efectivo\n2. T. Débito\n3. Cheque\n4. Cesta ticket\n5. T.Crédito"));
unidades = Integer.parseInt(JOptionPane.showInputDialog("Ingrese cantidad de unidades",0));
precio = Float.parseFloat(JOptionPane.showInputDialog("Ingrese el precio",0));

Ing. Nieves Ascanio H.


Lenguaje de programación III Unidad I _ Fundamentos de programación Java

montoVenta = unidades * precio;


if (formaPago == 1 || formaPago == 2){
descuento = montoVenta * 0.30f;
}
else if (formaPago == 3 || formaPago == 4){
descuento = montoVenta * 0.20f;
}
else if (formaPago == 5){
descuento = montoVenta * 0.10f;
}
else{
JOptionPane.showMessageDialog(null, "Valor no válido para forma de pago");
System.exit(0);
}
montoCobrar = montoVenta - descuento;
JOptionPane.showMessageDialog(null, "Monto venta " + montoVenta + "\nDescuento " +
descuento + "\nMonto a cobrar "+ montoCobrar );
System.exit(0); //Libera la memoria usada por la aplicación
}
}

Sentencias de repetición (ciclos)

Sentencia while

Sintaxis:

while (expresión booleana) {


sentencia ;
sentencia ;
}

La expresión boleana que controla el ciclo es evaluada, si resulta true (verdad) se ejecutan las
sentencias del ciclo. Cada vez que se ejecutan las sentencias del ciclo, el control es transferido al
inicio de la sentencia while y de nuevo se evalúa la expresión boleana, si resulta false (falsa) el
control es trasferido a la sentencia siguiente. Por lo tanto, mientras la expresión boleana sea
verdadera se repiten las sentencias del ciclo.

Ing. Nieves Ascanio H.


Lenguaje de programación III Unidad I _ Fundamentos de programación Java

Ejemplo

package sentencia_while;
import javax.swing. JOptionPane;
public class MenorEdad {
public static void main(String[] args) {
/* Programa que calcula la menor edad en un grupo de personas */
int edad, menorEdad = 110, respuesta = 0;
while (respuesta == 0){
edad = Integer.parseInt(JOptionPane.showInputDialog("Ingrese la edad",0));
if (edad < menorEdad){
menorEdad = edad;
}
respuesta = JOptionPane.showConfirmDialog(null, "¿Otra persona?", "Continuar",
JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE);
}
JOptionPane.showMessageDialog(null,"La menor edad procesada fue " + menorEdad);
System.exit(0);
}
}

Sentencia do …while

Sintaxis:

do {

sentencia ;

sentencia ;

} while (expresión booleana) ;

Las sentencias del ciclo se ejecutan la primera vez. Luego se evalúa la expresión booleana que
controla el ciclo, si el resultado es verdad se transfiere el control al inicio de la sentencia do, si el
resultado es falso el control se transfiere a la siguiente sentencia.

Esta sentencia es apropiada para validar el valor de un dato. La sentencia de entrada se ejecuta, se
evalúa el dato, se repite la entrada mientras el dato no sea válido.

Ing. Nieves Ascanio H.


Lenguaje de programación III Unidad I _ Fundamentos de programación Java

Ejemplo

package sentencia_do_while;
import javax.swing. JOptionPane;
public class MayorNota {
public static void main(String[] args) {
/* Programa que calcula la mayor nota en un grupo de estudiantes */
int nota, mayorNota = 0, respuesta = 0;
while (respuesta == 0){
do{
nota = Integer.parseInt(JOptionPane.showInputDialog("Ingrese la nota ",0));
} while (nota < 0 || nota > 20);
if (nota > mayorNota){
mayorNota = nota;
}
respuesta = JOptionPane.showConfirmDialog(null, "¿Otro estudiante?", "Continuar",
JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE);
}
JOptionPane.showMessageDialog(null,"La mayor nota procesada fue " + mayorNota);
System.exit(0);
}
}

Sentencia for

Sintaxis:

for (inicialización ; expresión booleana ; incremento|decremento){

sentencia ;

sentencia ;

La inicialización, es una sentencia de asignación para dar un valor inicial a la variable (contador)
que controla el ciclo. La expresión booleana evalúa al contador inicialmente y cada vez que se
ejecutan la(s) sentencia(s) del ciclo, si el resultado es verdad el control se transfiere a las sentencias
del ciclo, si es falso se transfiere a la siguiente sentencia. El incremento o decremento, determina la
variación del contador cada vez que se ejecuta el ciclo.

Ing. Nieves Ascanio H.


Lenguaje de programación III Unidad I _ Fundamentos de programación Java

La sentencia for, se usa cuando se requiere repetir la ejecución de una o más sentencias un número
determinado de veces, es decir, cuando se desea hacer un ciclo determinado.

Ejemplo

package sentencia_for;
import javax.swing. JOptionPane;
public class Multiplicacion {
public static void main(String[] args) {
// Program que calcula el producto de dos números positivos usando sumas sucesivas
int k, x, y, p = 0;
do{
x = Integer.parseInt(JOptionPane.showInputDialog("Ingrese el primer factor", 0));
}while (x < 0);
do{
y = Integer.parseInt(JOptionPane.showInputDialog("Ingrese el segundo factor", 0));
}while (y < 0);
for (k = 1; k <= y; k++){
p = p + x;
}
JOptionPane.showMessageDialog(null, x + " * " + y + " = " + p);
System.exit(0);
}
}

Sentencias para transferencia de control

Sentencia break

La sentencia break permite salir de un ciclo antes de que este se complete.

Sentencia continue

La sentencia continue envía el control al inicio de un ciclo

Etiqueta

Una etiqueta es un identificador seguido de dos puntos (:). Las etiquetas se utilizan para
identificar ciclos anidados. Se utiliza con las sentencias break y continue para indicar de que ciclo
se desea salir (break) o que ciclo se repetirá (continue).

Ing. Nieves Ascanio H.


Lenguaje de programación III Unidad I _ Fundamentos de programación Java

package numero_primo;
import javax.swing. JOptionPane;
public class NumeroPrimo {
public static void main(String[] args) {
/*Este programa muestra los números primos menores que 100
Un número primo tiene dos divisores la unidad y el mismo */
int x, numero = 1, cd;
String numerosPrimo = "Numeros primos \n";
rango:
while (true){
cd = 0; //cantidad de divisores
siguienteNumero:
for (x = 1; x <= numero; x++){
if (numero % x == 0){
cd ++;
if (cd > 2){
break siguienteNumero; //el número no es primo
}
}
} //fin for siguienteNumero:
if (cd <= 2){
numerosPrimo += numero + "\n";
}
numero ++;
if (numero < 100){
continue rango;
}
else {
break rango;
}
} //fin while rango:
JOptionPane.showMessageDialog(null, numerosPrimo);
System.exit(0);
}
}

En el ejemplo anterior se utilizaron etiquetas para mostrar el modo de usarlas, pero en este ejemplo,
si se eliminan las etiquetas el código funcionaría igualmente, ya que un break, envía el control
después del ciclo que lo contiene y un continue vuelve al inicio del ciclo que lo contiene.

Ing. Nieves Ascanio H.