Estructuras de control

Me dijeron que se usan para canalizar noseque de datos del programa… yo los uso para crear distintos caminos por donde tirar, hay dos tipos, condicionales (el if) y bucles (for, while y do), voy con el if, tambien hay una estructura que abre muchos caminos dependiendo del valor de una variable, el switch, yo los uso para hacer menus muy apañados o asignar muchos valores a variables etc etc:

JAVA:

  1. if (condicion){ //Si se cumple la condicion

  2.     haz esto;

  3.     haz esto otro;

  4. }else if (otracondicion){

  5.     haz otras cosas;

  6. }else{ // Y si no se cumple nada

  7.     haz esta otra cosa;

  8. }



También se puede usar solo el if o un if y un else if, lo que haga falta, por ejemplo solo me interesa poner la variable c a 3 si b vale 2 y luego seguir haciendo otras cosas:
JAVA:

  1. if (b == 2) //Si lo que va despues del if solo ocupa una linea no es necesario poner llaves, aunque yo las pongo para no liarme

  2.     c = 3;

  3. System.out.println(“Hola”)// Esto ya no estaria afectado por el if


El bucle for es como una especie de contador de la siguiente forma:
for (inicializacion de la variable; condicion; evolucion)
Por ejemplo queremos saludar 30 veces escribiendo Hola y el valor de la i en cada vuelta del bucle (cada vez que escribe Hola)

JAVA:

  1. for (int i = 0; i <30; i++){ //Para i igual a 0, mientras i sea menor de 30, aumenta i de uno en uno cada vuelta del bucle

  2.     System.out.println(“Hola. El valor de i en esta vuelta es de: “+ i);

  3. }


Los bucles do y while son lo mismo, se hace algo mientras una condicion no se cumpla, la diferencia es que en el do la condicion se pone al final del bucle, por lo que se ejecuta al menos una vez lo que hay dentro, en el caso del while la condicion esta al principio del bucle, por lo que si ya esta cumplida no se ejecuta nada.
Bucle do

JAVA:

  1. int numero = 2; // inicio una variable int de nombre numero con un valor de 2

  2. do {

  3.     System.out.println(“Escribe un numero”);

  4.     numero = teclado.nextInt();

  5. }while (int != 0); // Se repite tantas veces como haga falta mientras que el numero que le introducimos no valga 0



Bucle while
JAVA:

  1. String nombre = “pepito”; // Creo un String que contiene la palabra pepito

  2. while (!nombre.equals(“manolito”){

  3.     System.out.println(“Escribe tu nombre”);

  4.     nombre = teclado.nextLine();

  5. }



En este ultimo, si hubiera inicializado nombre con manolito el bucle no se habria ejecutado, se puede salir de un bucle en cualquier momento con break, por ejemplo dentro de un while vamos haciendo cosas, pero nos damos cuenta de que una vez cumplida una condicion no nos interesa que el bucle se siga ejecutando aunque la condicion principal del bucle no se cumpla, pues con
JAVA:

  1. while (condicion1){

  2.     Unas cuantas sentencias;

  3.     if (condicion2)

  4.         break;

  5.     Mas sentencias;

  6.     Mas;

  7.     Y mas;

  8. }



En este ejemplo en el momento que se cmple condicion2, aunque condicion1 no se haya cumplido se saldria del bucle y todo lo que hay por debajo no se ejecutaria

Switch
Para crear un switch primero debemos tener una variable con la que segun su valor hara una cosa u otra

JAVA:

  1. int opcion = 0:

  2. System.out.println(“Escribe un numero”);

  3. opcion = teclado.nextÏnt();

  4. switch (opcion){ //creamos el switch dependiendo del numero escrito en el teclado

  5.     case 1//Si el usuario ha escrito un 1 => la variable valdra uno

  6.         System.out.println(“Has escrito un uno”);

  7.     break;

  8.  

  9.     case 2:

  10.         System.out.println(“Has escrito un 2”);

  11.     break;

  12.  

  13.     case 3:

  14.         System.out.println(“La variable opcion vale 3”);

  15.         do{

  16.             System.out.println(“Escribe otro numero”);

  17.             opcion = teclado.nextInt();

  18.         }while (opcion != 7)//Se quedaria en ese bucle pidiendo un numero hasta que no escribamos el 7

  19.     break;

  20.  

  21.     default:

  22.         System.out.println(“Aqui pondremos la accion por defecto a realizar si no hay ningun case asignado al valor de la variable, por ejemplo aqui tenemos una accion para el caso de que valga 1, 2 o 3, pero si el susario introduce un 7000 saldria esta opcion”);

  23.     break;

  24. }