Foros del Web » Programación para mayores de 30 ;) » Java »

Ayuda con excepciones

Estas en el tema de Ayuda con excepciones en el foro de Java en Foros del Web. Buen dia amigos, primero quiero agradecer por haber contestado mi publicacion anterior a tiempo, de verdad se los agradezco... Bueno esta vez mi duda es ...
  #1 (permalink)  
Antiguo 08/12/2009, 13:08
Avatar de RauulMo  
Fecha de Ingreso: diciembre-2009
Ubicación: Santa Marta
Mensajes: 5
Antigüedad: 14 años, 4 meses
Puntos: 0
Exclamación Ayuda con excepciones

Buen dia amigos, primero quiero agradecer por haber contestado mi publicacion anterior a tiempo, de verdad se los agradezco...

Bueno esta vez mi duda es la siguiente.. tengo el siguiente codigo:
Código PHP:
import java.io.*;
public class 
bufer {
    
    
InputStreamReader isr = new InputStreamReader(System.in);
    
BufferedReader objbuff=new BufferedReader(isr);
    
int num1,num2,suma;
    
    
    
    
void metodo1(){
        try{
        
        
System.out.println("Digite un numero");
        
        
num1=Integer.parseInt(objbuff.readLine());
        
System.out.println("Digite otro numero");
        
        
num2=Integer.parseInt(objbuff.readLine());
        
        
        
suma=num1+num2;
        
        
System.out.println(num1 "+" num2+"="+suma);
        }
        catch(
Exception e){
            
System.out.println("Error!!, Digite un entero");
            
        }    
            
        
    }
    
    
    public static 
void main(String[] args) {
        
bufer objclass=new bufer();
        
objclass.metodo1();
        
        
    }


Lo que quiero es que al pedir el dato de entrada "Digite un numero" y "Digite otro numero" me muestre un error al digitar caracteres diciendo que debo digitar un entero (Pero esta parte ya la solucioné con la excepcion del catch) lo malo es que por ejemplo: Escribo "mama", y me muestra el error pero se termina el proceso, lo que quiero es que no se termine el proceso sino que no me permita seguir hasta que escriba bien un entero...
Bueno, les agradezco de antemano!
  #2 (permalink)  
Antiguo 08/12/2009, 14:47
Avatar de zaccarelliasbun  
Fecha de Ingreso: mayo-2009
Ubicación: Bolivia
Mensajes: 70
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Ayuda con excepciones

aqui esta resuelto tu problema

void metodo2()
{
boolean bandera = true;

while(bandera)
{
try
{
System.out.println("Digite un numero");

num1 = Integer.parseInt(objbuff.readLine());
System.out.println("Digite otro numero");

num2 = Integer.parseInt(objbuff.readLine());

suma = num1 + num2;

System.out.println(num1 + "+" + num2 + "=" + suma);
bandera = false;
}
catch (Exception e)
{
System.out.println("Error!!, Digite un entero");
bandera = true;
}
}
}
  #3 (permalink)  
Antiguo 08/12/2009, 14:49
Avatar de zaccarelliasbun  
Fecha de Ingreso: mayo-2009
Ubicación: Bolivia
Mensajes: 70
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Ayuda con excepciones

una pregunta, como se hace para poner el código como lo hiciste en tu pregunta, donde tu código sale con colores, encerrado en un panel con su scroll y no se desordena los tabs y mas cosas.
  #4 (permalink)  
Antiguo 08/12/2009, 15:05
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Respuesta: Ayuda con excepciones

Cuando ocurre una excepción, el código salta hasta el bloque catch que capture esa excepción más "cercano". Si no quieres que al haber una excepción salte fuera de un bucle, hay que meter el bloque try/catch dentro del bucle. Así de sencillo.

S!
__________________
Para obtener respuestas, pregunta de forma inteligente o si no, pregunta lo que quieras que yo contestaré lo que me dé la gana.
  #5 (permalink)  
Antiguo 08/12/2009, 18:04
Avatar de RauulMo  
Fecha de Ingreso: diciembre-2009
Ubicación: Santa Marta
Mensajes: 5
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: Ayuda con excepciones

Mmm viejo, al escribir tu mensaje busca una cuestion que dice php son unas etiquetas, metes tu codigo dentro y ya... muchas gracias por tu respuesta sirviooo :D
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:30.