Duda sobre un error en java

Iniciado por elbrujo20, 26 Mayo 2015, 03:33 AM

0 Miembros y 1 Visitante están viendo este tema.

elbrujo20

Hola comunidad estoy haciendo un proyecto en java queria sabe rpor me da un error al momento de poner otro case quiero agregar otro case pero me sale error de oprhaned case ya busque por otras fuentes pero no encuetro la solucion aqui les dejo el codigo el problema esta en el case 6 que me tira error y no hace nada
Código (java) [Seleccionar]
package persona;
import java.util.Scanner;
/**
*
* @author wddqwq
*/
public class proyectofinal {
   public static void main(String[] args) {
       Scanner sc = new Scanner(System.in);
       Persona contactos[] = new Persona[10];//Creacion del array que almacena 10 personas
       //declaracion de variables
       int op=0;//Variable op
       String nombre;//declaracion de variable nombre
       
       while(op!=9){    //Creacion del menu usando un while
           
            System.out.println("Que opcion quieres?");//opciones del menu que le saldran al usuario
            System.out.println("1-Crear");
            System.out.println("2-Buscar");
            System.out.println("3-Editar");
            System.out.println("4-Borrar");
            System.out.println("5-Imprimir todo");
            System.out.println("6-Actualizar");//agregue este mas
            System.out.println("9-Salir");
            op=sc.nextInt();
           
            switch(op){  //uso de switch para casos
                case 1:
                    for(int i=0; i<contactos.length;i++){//Creacion de for
                        if(contactos[i]==null){
                            contactos[i]=new Persona();
                            contactos[i].registrar();
                            contactos[i].imprimir();
                            break;
                        }
                    }
               break;
               case 2:
                    System.out.println("Dame el nombre a buscar:");//capturas por teclado
                    sc.nextLine();
                    nombre = sc.nextLine();
                    for(int i=0; i<contactos.length;i++){
                        if(contactos[i]!=null){
                           if(contactos[i].nombre.compareTo(nombre)==0){
                               contactos[i].imprimir();
                               break;
                           }
                        }
                    }
               break;
               case 3:
                   System.out.println("Que nombre editaras:");
                   sc.nextLine();
                   nombre = sc.nextLine();
                   
               
               
                   //Editar
                   break;
               case 4:
                   System.out.println("Cual nombre borraras:");
                   sc.nextLine();
                   nombre =sc.nextLine();
                   //Borrar
                   break;
               case 5:
                   System.out.println("Cual nombre imprimiras:");
                   //Imprimir todos
                   for(int i=0; i<contactos.length;i++){
                        if(contactos[i]!=null){
                            contactos[i].imprimir();
                        }
                        break;
                   
                        case 6:
                        System.out.println("Cual nombre actualizaras:"); //aqui esta el problema agregue otro case pero me tira error por que me pidieron mas cases
                        //Actualizar datos
                        break;
                   
                    }
                   break;
           
               case 9:
                    System.out.println("Gracias");
                    //salir del programa
                   break;
                   
                 
            }  
       }
   }
   
}


Mod: los códigos deben ir en etiquetas GeSHi

HunterLuis

Hola estuve revizando tu codigo es necesario que lo revices ya que hay algunos errores y con respecto a tu duda la mejor manera es esta:

case 5:
                    System.out.println("Cual nombre imprimiras:");
                    //Imprimir todos
                    for(int i=0; i<contactos.length;i++)
                         if(contactos!=null){
                             contactos.imprimir();
                         }
                         break;
                   
                case 6:
                   System.out.println("Cual nombre actualizaras:"); //aqui esta el problema agregue otro case pero me tira error por que me pidieron mas cases
                   //Actualizar datos
                     
                   
                     
                    break;

Si tienes algun problema despues de eso no dudes en preguntar y quieres puedo ayudarte

0xFer

A parte tienes un break demás después de case 6

Un saludo
Código (java) [Seleccionar]
int getRandomNumber(){
    return 4; //chosen by fair dice roll
              //guaranteed to be random
}