Excepciones en métodos que devuelven valores
Publicado por Paco (1 intervención) el 20/07/2009 11:23:17
Hola a todos.
Estoy queriendo crear un método para declarar una matriz de enteros. Este pedirá el número de componentes de la matriz, para que sea declarada, y poder quitar esto del código principal.
El problema es que para introducir un dato con
BufferedReader num=new BufferedReader(new InputStreamReader(System.in);
java me pide que cree una excepción. Lo hago, y el código queda:
public int NumeroComponentesMatriz(){
int INFINITO;
try{
System.out.println("Introduzca el número de elementos de la matriz");
BufferedReader num=new BufferedReader(new InputStreamReader(System.in));
String nume=num.readLine();
INFINITO=Integer.parseInt(nume);
return INFINITO;
}catch(Exception e){e.notify();}
}
Entonces me da error, porque el programa no lee el RETURN, y me dice que el método no devuelve ningún entero. Entonces he probado a sacar RETURN de la Excepción, quedando así
public int NumeroComponentesMatriz(){
int INFINITO;
try{
System.out.println("Introduzca el número de elementos de la matriz");
BufferedReader num=new BufferedReader(new InputStreamReader(System.in));
String nume=num.readLine();
INFINITO=Integer.parseInt(nume);
}catch(Exception e){e.notify();}
return INFINITO;
}
Y entonces el fallo es que INFINITO no tiene asignado ningún número. :(
¿Alguien me podría ayudar? agradezco de antemano cualquier sugerencia.
GRACIASSSSS
Estoy queriendo crear un método para declarar una matriz de enteros. Este pedirá el número de componentes de la matriz, para que sea declarada, y poder quitar esto del código principal.
El problema es que para introducir un dato con
BufferedReader num=new BufferedReader(new InputStreamReader(System.in);
java me pide que cree una excepción. Lo hago, y el código queda:
public int NumeroComponentesMatriz(){
int INFINITO;
try{
System.out.println("Introduzca el número de elementos de la matriz");
BufferedReader num=new BufferedReader(new InputStreamReader(System.in));
String nume=num.readLine();
INFINITO=Integer.parseInt(nume);
return INFINITO;
}catch(Exception e){e.notify();}
}
Entonces me da error, porque el programa no lee el RETURN, y me dice que el método no devuelve ningún entero. Entonces he probado a sacar RETURN de la Excepción, quedando así
public int NumeroComponentesMatriz(){
int INFINITO;
try{
System.out.println("Introduzca el número de elementos de la matriz");
BufferedReader num=new BufferedReader(new InputStreamReader(System.in));
String nume=num.readLine();
INFINITO=Integer.parseInt(nume);
}catch(Exception e){e.notify();}
return INFINITO;
}
Y entonces el fallo es que INFINITO no tiene asignado ningún número. :(
¿Alguien me podría ayudar? agradezco de antemano cualquier sugerencia.
GRACIASSSSS
Valora esta pregunta


0