소개
Java 에서 Float 클래스는 두 개의 float 값의 동일성을 비교하는 데 도움이 되는 equals() 메서드를 가지고 있습니다. 이 랩에서는 이 메서드의 구현, 구문 및 다양한 예제에 대해 알아보겠습니다.
Java 에서 Float 클래스는 두 개의 float 값의 동일성을 비교하는 데 도움이 되는 equals() 메서드를 가지고 있습니다. 이 랩에서는 이 메서드의 구현, 구문 및 다양한 예제에 대해 알아보겠습니다.
먼저 ~/project 디렉토리에 Java 파일을 생성합니다. 파일 이름을 FloatEquals.java로 지정하겠습니다.
cd ~/project
touch FloatEquals.java
FloatEquals.java의 main 메서드 내부에 equals() 메서드를 작성합니다. 그런 다음 두 개의 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() 메서드를 사용하여 비교하고 결과를 equal이라는 boolean 변수에 저장했습니다. 마지막으로, 결과를 문자열과 연결하여 println() 메서드를 사용하여 콘솔에 결과를 출력했습니다.
Float 객체에 대한 메서드를 구현했으므로, 이제 사용자가 두 개의 다른 Float 값을 제공하여 equals() 메서드를 사용하여 비교할 수 있도록 하겠습니다.
FloatEquals.java의 main 메서드에 추가한 코드를 다음 코드로 바꿉니다.
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);
}
}
설명: 여기서는 Scanner 클래스와 해당 nextFloat() 메서드를 사용하여 사용자로부터 두 개의 Float 값을 입력으로 받습니다. 그런 다음 equals() 메서드를 사용하여 비교하고 결과를 equal이라는 boolean 변수에 저장합니다. 마지막으로, 문자열과 결과를 연결하여 println() 메서드를 사용하여 콘솔에 결과를 출력합니다.
사용자가 float 값이 아닌 값을 입력하면 Scanner 클래스가 java.util.InputMismatchException을 발생시킬 수 있습니다. try-catch 블록을 사용하여 이 예외를 처리해 보겠습니다.
FloatEquals.java의 main 메서드에 추가한 코드를 다음 코드로 바꿉니다.
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 블록을 추가했습니다. 사용자가 float 가 아닌 값을 입력하면 InputMismatchException이 발생하며, 이는 catch 블록에서 처리됩니다. 콘솔에 오류 메시지를 출력합니다.
마지막으로, 출력을 확인하기 위해 프로그램을 컴파일하고 실행해야 합니다. 터미널에서 ~/project 디렉토리로 이동하여 다음 명령을 실행합니다.
javac FloatEquals.java && java FloatEquals
출력:
Enter value 1: 12.5
Enter value 2: 12.5
Are the values equal? true
4 단계에서 구현한 try-catch 블록을 테스트해 보겠습니다. num1 값을 입력하라는 메시지가 표시되면 float 가 아닌 값을 입력하십시오.
출력:
Enter value 1: abc
Invalid input. Please enter a float value.
이 랩에서는 Java 의 Float 클래스 equals() 메서드에 대해 배웠습니다. 이를 구현하는 방법, 구문 및 사용 예제를 배웠습니다. 또한 try-catch 블록을 사용하여 오류를 처리하는 방법과 잘못된 입력에 대한 프로그램을 테스트하는 방법도 배웠습니다.