介绍
在 Java 中,Float
类有一个 equals()
方法,它用于比较两个 float
值的相等性。在本实验中,我们将学习该方法的实现、语法以及各种示例。
在 Java 中,Float
类有一个 equals()
方法,它用于比较两个 float
值的相等性。在本实验中,我们将学习该方法的实现、语法以及各种示例。
我们首先在 ~/project
目录下创建一个 Java 文件。将其命名为 FloatEquals.java
。
cd ~/project
touch FloatEquals.java
equals()
方法我们将在 FloatEquals.java
的 main
方法中编写 equals()
方法。然后,创建两个 Float
对象,并使用 equals()
方法比较它们。最后,将结果打印到控制台。
将以下代码添加到 FloatEquals.java
文件中:
public class FloatEquals {
public static void main(String[] args) {
// 实现 equals() 方法
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()
方法将结果打印到控制台。
equals()
方法提供不同的值现在我们已经为 Float
对象实现了该方法,接下来让用户提供两个不同的 Float
值,并使用 equals()
方法进行比较。
将 FloatEquals.java
文件中 main
方法的代码替换为以下内容:
import java.util.Scanner;
public class FloatEquals {
public static void main(String[] args) {
// 为 equals() 方法提供不同的值
Scanner sc = new Scanner(System.in);
System.out.print("输入值 1: ");
Float num1 = sc.nextFloat();
System.out.print("输入值 2: ");
Float num2 = sc.nextFloat();
boolean equal = num1.equals(num2);
System.out.println("这两个值相等吗? " + equal);
}
}
解释:在这里,我们使用 Scanner
类及其 nextFloat()
方法从用户那里获取两个 Float
值作为输入。然后,使用 equals()
方法比较它们,并将结果存储在一个名为 equal
的 boolean
变量中。最后,通过将字符串与结果连接,使用 println()
方法将结果打印到控制台。
如果用户输入的值不是浮点数,Scanner
类可能会抛出 java.util.InputMismatchException
异常。让我们使用 try-catch
块来处理此异常。
将 FloatEquals.java
文件中 main
方法的代码替换为以下内容:
import java.util.Scanner;
public class FloatEquals {
public static void main(String[] args) {
// 使用 try-catch 处理错误
try {
Scanner sc = new Scanner(System.in);
System.out.print("输入值 1: ");
Float num1 = sc.nextFloat();
System.out.print("输入值 2: ");
Float num2 = sc.nextFloat();
boolean equal = num1.equals(num2);
System.out.println("这两个值相等吗? " + equal);
} catch (java.util.InputMismatchException e) {
System.out.println("输入无效。请输入一个浮点数值。");
}
}
}
解释:在这里,我们添加了一个 try-catch
块,包裹了从用户那里获取输入的代码。如果用户输入的值不是浮点数,则会抛出 InputMismatchException
异常,并由 catch
块处理。它会在控制台打印一条错误消息。
最后,我们需要编译并运行程序以查看输出。在终端中,导航到 ~/project
目录并执行以下命令:
javac FloatEquals.java && java FloatEquals
输出:
输入值 1: 12.5
输入值 2: 12.5
这两个值相等吗? true
让我们测试在步骤 4 中实现的 try-catch
块。当提示输入 num1
值时,输入一个非浮点数值。
输出:
输入值 1: abc
输入无效。请输入一个浮点数值。
在本实验中,我们学习了 Java 中 Float
类的 equals()
方法。我们了解了如何实现它、其语法以及使用它的不同示例。我们还学习了如何使用 try-catch
块处理错误,并测试了程序对错误输入的处理能力。