Введение
В Java класс Float
имеет метод equals()
, который помогает сравнивать равенство двух значений типа float
. В этом практическом занятии мы узнаем об реализации, синтаксисе и различных примерах использования этого метода.
💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал
В Java класс Float
имеет метод equals()
, который помогает сравнивать равенство двух значений типа float
. В этом практическом занятии мы узнаем об реализации, синтаксисе и различных примерах использования этого метода.
Сначала мы создадим Java-файл в директории ~/project
. Назовем его FloatEquals.java
.
cd ~/project
touch FloatEquals.java
equals()
Мы напишем метод equals()
внутри метода main
нашего файла FloatEquals.java
. Затем мы создадим два объекта типа Float
и сравним их с использованием метода equals()
. Наконец, мы выведем результат на консоль.
Добавьте следующий код в файл FloatEquals.java
:
public class FloatEquals {
public static void main(String[] args) {
// Implementing the equals() method
Float num1 = 10.5f;
Float num2 = 10.5f;
boolean equal = num1.equals(num2);
System.out.println("Are num1 and num2 equal? " + equal);
}
}
Пояснение: Здесь мы создали два объекта Float
, num1
и num2
, и присвоили им оба значение 10.5f
. Затем мы сравнили их с использованием метода equals()
и сохранили результат в переменную boolean
с именем equal
. Наконец, мы вывели результат на консоль с использованием метода println()
, объединив результат с строкой.
equals()
Теперь, когда мы реализовали метод для объектов Float
, давайте дадим пользователю возможность ввести два различных значения типа Float
и сравнить их с использованием метода equals()
.
Замените код, который вы добавили в метод main
файла FloatEquals.java
, следующим кодом:
import java.util.Scanner;
public class FloatEquals {
public static void main(String[] args) {
// Providing different values to the equals() method
Scanner sc = new Scanner(System.in);
System.out.print("Enter value 1: ");
Float num1 = sc.nextFloat();
System.out.print("Enter value 2: ");
Float num2 = sc.nextFloat();
boolean equal = num1.equals(num2);
System.out.println("Are the values equal? " + equal);
}
}
Пояснение: Здесь мы получаем два значения типа Float
в качестве ввода от пользователя, используя класс Scanner
и его метод nextFloat()
. Затем мы сравниваем их с использованием метода equals()
и сохраняем результат в переменную boolean
с именем equal
. Наконец, мы выводим результат на консоль с использованием метода println()
, объединив строку с результатом.
Класс Scanner
может вызывать исключение java.util.InputMismatchException
, если пользователь вводит нечисловое значение. Давайте обработаем это исключение с использованием блока try-catch
.
Замените код, который вы добавили в метод main
файла FloatEquals.java
, следующим кодом:
import java.util.Scanner;
public class FloatEquals {
public static void main(String[] args) {
// Handling errors with try-catch
try {
Scanner sc = new Scanner(System.in);
System.out.print("Enter value 1: ");
Float num1 = sc.nextFloat();
System.out.print("Enter value 2: ");
Float num2 = sc.nextFloat();
boolean equal = num1.equals(num2);
System.out.println("Are the values equal? " + equal);
} catch (java.util.InputMismatchException e) {
System.out.println("Invalid input. Please enter a float value.");
}
}
}
Пояснение: Здесь мы добавили блок try-catch
, который окружает код, который получает ввод от пользователя. Если пользователь вводит значение, которое не является числом с плавающей точкой, возникает исключение InputMismatchException
, которое обрабатывается блоком catch
. Он выводит сообщение об ошибке на консоль.
Наконец, нам нужно скомпилировать и запустить программу, чтобы увидеть вывод. В терминале перейдите в директорию ~/project
и выполните следующую команду:
javac FloatEquals.java && java FloatEquals
Вывод:
Enter value 1: 12.5
Enter value 2: 12.5
Are the values equal? true
Протестируем блок try-catch
, который мы реализовали на шаге 4. Введите нечисловое значение, когда вас попросят ввести значение num1
.
Вывод:
Enter value 1: abc
Invalid input. Please enter a float value.
В этом практическом занятии мы изучили метод equals()
класса Float
в Java. Мы узнали, как реализовать его, синтаксис и различные примеры его использования. Мы также узнали, как обрабатывать ошибки с использованием блока try-catch
, и протестировали нашу программу на некорректный ввод.