Я начинаю, и мне нужно написать код, который вычисляет площадь и окружность из радиуса, который дает мне пользователь. эта часть была простой, но учитель также хотел, чтобы я принимал только действительные целые числа и возвращал пользователю значение, когда его ввод неверен ...Как я могу отобразить сообщение об ошибке в Java
, так что я смог отобразить сообщение об ошибке для каждого кроме случая, когда они входят в отрицательное целое число:
import java.util.Scanner;
public class GetCircle
{
public static void main(String []args)
{
Scanner input = new Scanner(System.in);
int radius;
do {
System.out.print("Please enter size of radius (Must be integer): ");
while (!input.hasNextInt()) {
System.out.print("That is not a valid number, please try again :");
input.next();
}
radius = input.nextInt();
} while (radius < 0);
System.out.println("The radius is: " + radius);
}
}
и так это то, что я получаю в результате:
Пожалуйста, введите размер радиуса (должен быть целым числом): AAA
это не является av Алид номер, пожалуйста, попробуйте еще раз: 4,5555
Это не правильный номер, пожалуйста, попробуйте еще раз: -5
Пожалуйста, введите размер радиуса (должен быть целым числом): -5
Пожалуйста, введите размер радиус (должен быть целым числом): -8.777
Это не является допустимым числом, пожалуйста, попробуйте еще раз: -4
Пожалуйста, введите размер радиуса (должно быть целым):
** поэтому всякий раз, когда его отрицательное целое число не отображает сообщение об ошибке ...
как я могу исправить это, пожалуйста?
ПОЖАЛУЙСТА, НЕ ВЫЗЫВАЙТЕ. Кроме того, пожалуйста, отформатируйте свой вопрос, чтобы мы могли оптимально помочь вам. – Li357
Подсказка: '-5' в порядке относительно' hasNextInt' –
Я понимаю, что и я поймаю эту ошибку, идя в то время как (радиус <0) внизу, но я хочу, чтобы он отображал сообщение об ошибке, и я застрял. Я не знаю, как это сделать. Я думал об использовании: while (! input.hasNextInt() || radius <0), но это тоже не сработало. – Brow