#java #input #exception-handling #output #core
#java #ввод #обработка исключений #вывод #Ядро
Вопрос:
package simple;
import java.io.BufferedReader;
import java.io.InputStreamReader;
class AreaofCircle{
public static void main(String args[]){
float PI = 3.1416f;
int r=0;
String rad;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Radius?");
try{
rad = br.readLine();
r = Integer.parseInt(rad);
System.out.println("Circle area is: " PI*r*r " Permieter: " PI*2*r);
}
catch(Exception e){
System.out.println("Write an integer number");
AreaofCircle a = new AreaofCircle();
}
}
}
Здесь, в этом коде, предположим, что пользователь вводит некоторую строку с помощью клавиатуры, в этот момент в блоке try отображается исключение, и оно переходит в блок catch,
И я хочу показать подробности ошибки и хочу снова вернуть пользователя к этому коду, как это возможно, пожалуйста, помогите мне в этом.
Комментарии:
1. Циклы ?………
Ответ №1:
int allowedAttempts=0;
while(true)
{
try{
rad = br.readLine();
r = Integer.parseInt(rad);
System.out.println("Circle area is: " PI*r*r " Permieter: " PI*2*r);
break;
}
catch(Exception e){
System.out.println("Write an integer number");
allowedAttempts ;
if(allowedAttempts==3){
System.out.println("No More attempts allowed");break;
}
}
}
Вы можете использовать целочисленную переменную и запрашивать определенное количество попыток.