Java Integer 的 numberOfLeadingZeros 方法

JavaBeginner
立即练习

介绍

在本实验中,你将学习 Java 中 Integer 类的 numberOfLeadingZeros() 方法。该方法用于返回作为参数传递的 int 值的二进制补码中最高位(最左侧)的 1 之前的零比特的数量。

创建一个 Java 文件

打开终端并使用以下命令创建一个新的 Java 文件:

touch ~/project/NumberOfLeadingZerosDemo.java

实现 numberOfLeadingZeros() 方法

在编辑器中,添加以下代码以实现 numberOfLeadingZeros() 方法:

public class NumberOfLeadingZerosDemo {
      public static void main(String[] args) {
         int num = 170;
         System.out.format("The number of leading zeros in %d is %d%n", num, Integer.numberOfLeadingZeros(num));
      }
}

这段代码初始化了一个值为 170 的变量 num,然后使用 numberOfLeadingZeros 方法返回 num 中前导零的数量。

使用负数实现方法

现在,让我们修改程序以处理负数。添加以下代码:

int negativeNum = -57;
System.out.format("The number of leading zeros in %d is %d%n", negativeNum, Integer.numberOfLeadingZeros(negativeNum));

这段代码初始化了一个值为 -57 的变量 negativeNum,然后使用 numberOfLeadingZeros() 方法返回 negativeNum 中前导零的数量。

使用负数编译并运行程序

保存文件的更改,并使用以下命令重新编译程序:javac ~/project/NumberOfLeadingZerosDemo.java

然后,使用以下命令再次运行程序:java NumberOfLeadingZerosDemo

输出应如下所示:

The number of leading zeros in 170 is 24
The number of leading zeros in -57 is 0

总结

在本实验中,你学习了 Java 中 Integer 类的 numberOfLeadingZeros() 方法。你了解了如何使用该方法返回作为参数传递的 int 值的二进制补码中最高位(最左侧)的 1 之前的前导零的数量。你还学习了如何在正数和负数中使用该方法。