Java - Menu no se ejecuta y no aparece ningún error

 
Vista:
sin imagen de perfil

Menu no se ejecuta y no aparece ningún error

Publicado por joaquin (5 intervenciones) el 29/11/2022 15:03:28
Buenas
cuando le doy ejecutar a mi programa la consola se queda en blanco y no se ejecuta el menú sin aparecer ningún problema, si alguno sabe por que me ayudaria mucho.
este es el codigo.

MAIN:


package Proyecto_1;

import java.util.Scanner;

public class Principal {
static Scanner entrada = new Scanner(System.in);
final static int num = 4;
static Aeropuerto aeropuertos[] = new Aeropuerto[num];


public static void main(String[] args){
insertarDatosAeropuerto(aeropuertos);

menu();
}



public static void insertarDatosAeropuerto(Aeropuerto aero[]){

aero[0] = new Publicos (10000000, "Aeroparque Internacional Jorge Newbery", "Buenos Aires", "Argentina");
aero[0].insertarCompañia(new Compañia("Fly bondi"));
aero[0].insertarCompañia(new Compañia("Aerolineas Argentinas"));
aero[0].getCompañia("Fly bondi").insertarVuelo(new Vuelo("IB20","Buenos Aires","Puerto Madryn",12000,150));
aero[0].getCompañia("Fly bondi").insertarVuelo(new Vuelo("IB21","Buenos Aires","Trelew",10000,150));
aero[0].getCompañia("Aerolinas Argentinas").insertarVuelo(new Vuelo("FC12","Buenos Aires","Londres",200000,300));
aero[0].getCompañia("fly Bondi").getVuelo("IB20").insertarPasajero(new Pasajeros("Joaquin","20BGHP","Argentina"));
aero[0].getCompañia("fly Bondi").getVuelo("IB20").insertarPasajero(new Pasajeros("Maria","Pjkl20","Argentina"));
aero[0].getCompañia("Aerolinas Argentinas").getVuelo("FC12").insertarPasajero(new Pasajeros("Raul","JHK12","Peruano"));

aero[1] = new Publicos (3000000, "Aeropuerto El Tehuelche", "Puerto Madryn", "Argentina");
aero[1].insertarCompañia(new Compañia("Jet Smart"));
aero[1].insertarCompañia(new Compañia("Lade"));
aero[1].getCompañia("Jet Smart").insertarVuelo(new Vuelo("AE30","Puerto Madryn","Buenos Aires",12000,150));
aero[1].getCompañia("Jet Smart").insertarVuelo(new Vuelo("AE31","Puerto Madryn","Cordoba",9000,150));
aero[1].getCompañia("Lade").insertarVuelo(new Vuelo("HJ51","Puerto Madryn","Eseisa",15000,250));
aero[1].getCompañia("Jet Smart").getVuelo("AE30").insertarPasajero(new Pasajeros("Marcos","4530IB","Argentina"));
aero[1].getCompañia("Jet Smart").getVuelo("AE31").insertarPasajero(new Pasajeros("Mariela","2456OI","Argentina"));
aero[1].getCompañia("Lade").getVuelo("HJ51").insertarPasajero(new Pasajeros("Manuela","124214GH","Peruano"));

aero[2] = new Privado("San Fernando", "San Fernando", "Argentina");
aero[2].insertarCompañia(new Compañia("Copa Airlines"));

aero[2].getCompañia("Copa Airlines").insertarVuelo(new Vuelo("R12","San fernando","Comodoro rivadavia",90000,15));
aero[2].getCompañia("Copa Airlines").insertarVuelo(new Vuelo("E34","San fernando","Neuquen",90000,15));

aero[2].getCompañia("Copa Airlines").getVuelo("R12").insertarPasajero(new Pasajeros("Marcos","42340IB","Argentina"));
aero[2].getCompañia("Copa Airlines").getVuelo("E34").insertarPasajero(new Pasajeros("Mariela","4277OI","Argentina"));

aero[3] = new Privado("ALLEN", "Cordoba", "Argentina");
aero[3].insertarCompañia(new Compañia("Copa Airlines"));

aero[3].getCompañia("Copa Airlines").insertarVuelo(new Vuelo("R120","Cordoba","Comodoro rivadavia",70000,15));
aero[3].getCompañia("Copa Airlines").insertarVuelo(new Vuelo("J34","Cordoba","San fernando",60000,4));

aero[3].getCompañia("Copa Airlines").getVuelo("R120").insertarPasajero(new Pasajeros("Damian","42341735","Argentina"));
aero[3].getCompañia("Copa Airlines").getVuelo("J34").insertarPasajero(new Pasajeros("Martin","42771128","Argentina"));

}

public static void menu(){
int opcion;

do{
System.out.println("\t.:MENU:.");
System.out.println("1. Ver Aeropuertos gestionados (Publico o privados)");
System.out.println("2. Ver empresas(privado) o subvencion(Publicos)");
System.out.println("3. Lista de compañias de un aerpuerto");
System.out.println("4. Lista de vuelos por Compañia");
System.out.println("5. Listar posibles vuelos de Origen a Destino");
System.out.println("6. Salir");
System.out.println("Opcion: ");
opcion = entrada.nextInt();

switch(opcion){
case 1 -> {
System.out.println("");
mostrarDatosAeropuertos(aeropuertos);
break;
}
case 2 -> {
System.out.println("");
mostrarPatrosinio(aeropuertos);
break;


}
case 3 -> {

}
case 4 -> {

}
case 5 -> {

}
case 6 -> {

}
default -> System.out.println("Error opcion no valida...");

}

}while(opcion!=6);
}

public static void mostrarDatosAeropuertos(Aeropuerto aeropuertos[]){

for(int i=0;i<aeropuertos.length;i++){
if(aeropuertos[i] instanceof Privado){
System.out.println("Aeropuerto Privado");
System.out.println("Nombre: "+aeropuertos[i].getNombre());
System.out.println("Ciudad: "+aeropuertos[i].getCiudad());
System.out.println("Pais: "+aeropuertos[i].getPais());
}
else{
System.out.println("Aeropuerto Publico");
System.out.println("Nombre: "+aeropuertos[i].getNombre());
System.out.println("Ciudad: "+aeropuertos[i].getCiudad());
System.out.println("Pais: "+aeropuertos[i].getPais());

}
System.out.println("");
}


}
public static void mostrarPatrosinio(Aeropuerto aeropuertos[]){
String empresas[];

for(int i=0;i<aeropuertos.length;i++){
if(aeropuertos[i] instanceof Privado){
System.out.println("Aeropuerto Privado: "+aeropuertos[i].getNombre());
empresas = ((Privado)aeropuertos[i]).getListaEmpresas();
for(int j=0;j<empresas.length;j++){
System.out.println(empresas[j]);
}
}
else{
System.out.println("Aeropuerto Publico: "+aeropuertos[i].getNombre());
System.out.println("Subvencion: "+((Publicos)aeropuertos[i]).getSubvencio());
}
System.out.println("");
}
}
}







Captura1
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Kabuto
Val: 3.428
Oro
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Menu no se ejecuta y no aparece ningún error

Publicado por Kabuto (1381 intervenciones) el 30/11/2022 11:52:07
O usas el modo debug de NetBeans, o tu mismo haces tu "propio debug".

Por ejemplo, parece que el método insertarDatosAeropuerto() se queda atascasdo en algún momento.
Pues bien, yo en casos así lo que hago es poner mensajes al principio y final del método, para ver en consola cuando empieza el método y ver si logra termina o no.
Marco todas las líneas como comentarios y voy probando a ejecutar el programa. En cada prueba, "descomento" las líneas una a una, hasta encontrar cuál es la que atasca el programa.

Empieza con el método como pongo a continuación.
Si funciona, descomenta la siguiente línea y vuelve a probar.
Así hasta que encuentres la línea que atasca todo.

Y si resulta que todo funciona, pues ya sabes que el problema no está en este método, si no en menu().


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
public static void insertarDatosAeropuerto(Aeropuerto aero[]){
 
System.out.println("Comenzando metodo insertarDatosAeropuerto()");
aero[0] = new Publicos (10000000, "Aeroparque Internacional Jorge Newbery", "Buenos Aires", "Argentina");
//aero[0].insertarCompañia(new Compañia("Fly bondi"));
//aero[0].insertarCompañia(new Compañia("Aerolineas Argentinas"));
//aero[0].getCompañia("Fly bondi").insertarVuelo(new Vuelo("IB20","Buenos Aires","Puerto Madryn",12000,150));
//aero[0].getCompañia("Fly bondi").insertarVuelo(new Vuelo("IB21","Buenos Aires","Trelew",10000,150));
//aero[0].getCompañia("Aerolinas Argentinas").insertarVuelo(new Vuelo("FC12","Buenos Aires","Londres",200000,300));
//aero[0].getCompañia("fly Bondi").getVuelo("IB20").insertarPasajero(new Pasajeros("Joaquin","20BGHP","Argentina"));
//aero[0].getCompañia("fly Bondi").getVuelo("IB20").insertarPasajero(new Pasajeros("Maria","Pjkl20","Argentina"));
//aero[0].getCompañia("Aerolinas Argentinas").getVuelo("FC12").insertarPasajero(new Pasajeros("Raul","JHK12","Peruano"));
 
//aero[1] = new Publicos (3000000, "Aeropuerto El Tehuelche", "Puerto Madryn", "Argentina");
//aero[1].insertarCompañia(new Compañia("Jet Smart"));
//aero[1].insertarCompañia(new Compañia("Lade"));
//aero[1].getCompañia("Jet Smart").insertarVuelo(new Vuelo("AE30","Puerto Madryn","Buenos Aires",12000,150));
//aero[1].getCompañia("Jet Smart").insertarVuelo(new Vuelo("AE31","Puerto Madryn","Cordoba",9000,150));
//aero[1].getCompañia("Lade").insertarVuelo(new Vuelo("HJ51","Puerto Madryn","Eseisa",15000,250));
//aero[1].getCompañia("Jet Smart").getVuelo("AE30").insertarPasajero(new Pasajeros("Marcos","4530IB","Argentina"));
//aero[1].getCompañia("Jet Smart").getVuelo("AE31").insertarPasajero(new Pasajeros("Mariela","2456OI","Argentina"));
//aero[1].getCompañia("Lade").getVuelo("HJ51").insertarPasajero(new Pasajeros("Manuela","124214GH","Peruano"));
 
//aero[2] = new Privado("San Fernando", "San Fernando", "Argentina");
//aero[2].insertarCompañia(new Compañia("Copa Airlines"));
 
//aero[2].getCompañia("Copa Airlines").insertarVuelo(new Vuelo("R12","San fernando","Comodoro rivadavia",90000,15));
//aero[2].getCompañia("Copa Airlines").insertarVuelo(new Vuelo("E34","San fernando","Neuquen",90000,15));
 
//aero[2].getCompañia("Copa Airlines").getVuelo("R12").insertarPasajero(new Pasajeros("Marcos","42340IB","Argentina"));
//aero[2].getCompañia("Copa Airlines").getVuelo("E34").insertarPasajero(new Pasajeros("Mariela","4277OI","Argentina"));
 
//aero[3] = new Privado("ALLEN", "Cordoba", "Argentina");
//aero[3].insertarCompañia(new Compañia("Copa Airlines"));
 
//aero[3].getCompañia("Copa Airlines").insertarVuelo(new Vuelo("R120","Cordoba","Comodoro rivadavia",70000,15));
//aero[3].getCompañia("Copa Airlines").insertarVuelo(new Vuelo("J34","Cordoba","San fernando",60000,4));
 
//aero[3].getCompañia("Copa Airlines").getVuelo("R120").insertarPasajero(new Pasajeros("Damian","42341735","Argentina"));
//aero[3].getCompañia("Copa Airlines").getVuelo("J34").insertarPasajero(new Pasajeros("Martin","42771128","Argentina"));
 
System.out.println("Ha finalizado metodo insertarDatosAeropuerto()");
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar