curso de java

Curso de Java
Desde cero hasta conexiones con bases de datos MySQL

Iniciación: página 23
[ 20, 21, 22, 23, 24, 25, 26 ]

Iniciación al lenguaje Java

Estructuras de control

if.. else anidado

Aunque hemos avanzado, el programa sigue teniendo problemas. Si el usuario no escribe el nombre pero oprime el botón aceptar, la cadena mostrada será Hola solamente; si queremos que aparezca otro mensaje para este caso, hay más de una solución; una de ellas es anidar un if…else dentro del que ya hicimos:


DemoIfElseAnidado.java

package cursojava.demos; //La encapsulamos en un lugar para todos los demos

import javax.swing.JOptionPane; //Importamos la clase JOptionPane

public class DemoIfElseAnidado{

    String nombre; //Este será la información para el I/O

    public DemoIfElseAnidado() {

    	//El constructor llama a sus métodos

    	pideNombre();

    	muestraSaludo();    	

    }

    /*La palabra reservada null del primer atributo en los dos métodos 

     *de JOptionPane es porque, por lo común, esta clase es llamada desde una ventana

     * que es su propietario como no tenemos tal ventana, lo indicamos así

     */

    private void pideNombre(){

    	nombre=JOptionPane.showInputDialog(null,"Escribe tu nombre");//Pide el nombre

    }

    private void muestraSaludo(){

    	//Inicio de la estructura de control if…else	

    	if(nombre==null)  {

    	   JOptionPane.showMessageDialog(null,"Oprimiste cancelar");//Mensaje por la cancelación

    	}else

    	    if(nombre.equals("")){//Las cadenas no se comparan con == sino con el método equals()

    		JOptionPane.showMessageDialog(null,"Oprimiste aceptar sin escribir tu nombre");

    		}else{    		{

    		       JOptionPane.showMessageDialog(null,"Hola "+nombre);//Saluda en pantalla

    		}

    	}

    }    

    public static void main(String[] args) {

       new DemoIfElseAnidado();

    }

}

En este caso, el programa podrá enviar tres respuestas distintas:
1. Mandar el saludo
2. Indicar que se oprimió cancelar
3. Indicar que no se escribió el nombre

[ Anterior | Siguiente ]