Обработка равных чисел
На предыдущих этапах мы использовали оператор "больше чем" (>
) для проверки, является ли одно число больше другого. Однако, что произойдет, если два числа равны? Наша текущая программа не обрабатывает этот случай явно.
На этом этапе мы научимся проверять равенство с помощью оператора равенства (==
) и использовать конструкции if-else if-else
для обработки нескольких возможных сценариев, включая случай, когда числа равны.
Оператор равенства (==
) в Java используется для проверки, равны ли два значения. Он возвращает true
, если значения одинаковы, и false
в противном случае.
Давайте модифицируем нашу программу, чтобы сравнить два числа и вывести сообщение, которое указывает, является ли первое число больше, меньше или равно второму числу.
-
Откройте файл HelloJava.java
в редакторе WebIDE.
-
Замените существующий код следующим:
import java.util.Scanner;
public class HelloJava {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Enter the first number: ");
double number1 = scanner.nextDouble();
System.out.print("Enter the second number: ");
double number2 = scanner.nextDouble();
if (number1 > number2) {
System.out.println("The first number is greater than the second number.");
} else if (number1 < number2) {
System.out.println("The first number is less than the second number.");
} else {
System.out.println("The two numbers are equal.");
}
scanner.close();
}
}
Рассмотрим изменения:
- Теперь мы считываем два значения типа
double
, чтобы иметь больше гибкости при тестировании.
if (number1 > number2)
: Это та же проверка, что и раньше. Если number1
больше number2
, выводится первое сообщение.
else if (number1 < number2)
: Это новая часть. Блок else if
выполняется только в том случае, если предыдущее условие if
(number1 > number2
) ложно. Здесь мы используем оператор "меньше чем" (<
) для проверки, меньше ли number1
чем number2
.
else
: Этот блок выполняется, если ни одно из предыдущих условий if
или else if
не является истинным. В этом случае, если number1
не больше number2
и не меньше number2
, оно должно быть равно number2
.
-
Сохраните файл (Ctrl+S или Cmd+S).
-
Скомпилируйте программу в терминале:
javac HelloJava.java
-
Запустите программу:
java HelloJava
-
Введите два числа, включая случаи, когда они равны.
Если вы введете 7.5
в качестве первого числа и 7.5
в качестве второго числа, вывод будет следующим:
Enter the first number: 7.5
Enter the second number: 7.5
The two numbers are equal.
Если вы введете 10
и 5
, вы увидите сообщение "The first number is greater than the second number." Если вы введете 5
и 10
, вы увидите сообщение "The first number is less than the second number."
Теперь вы успешно использовали конструкции if-else if-else
и оператор равенства (==
) для обработки различных результатов сравнения, включая случай равенства.