整数Java中的numberOfTrailingZeros()方法及其示例

这个 JAVA整型。numberOfTrailingZeros() 返回指定整数值的二元补码二进制表示中最低一位(即最右边或最低有效“1”位)后的零(0)位总数的方法,或者我们可以说是将int值转换为二进制的函数,然后考虑最低一位并返回其后的零位数。如果指定的整数值在其2的补码表示中没有一位,换句话说,如果它等于零,那么它将返回32。

null

语法:

public static int numberOfTrailingZeros(int a)

参数: 参数 A. 是一个整数值。

返回值: 此方法返回指定int值的两位补码二进制表示中最低一位或设定位之后的零位数,如果该值等于零,则返回32位。

解释

  • 考虑一个整数A=170
  • 二进制表示=10101010
  • 最低一位=2
  • 尾随零的数量=1

下面的程序演示了Java。整型。numberOfTrailingZeros()方法。

项目1: 对于一个正数。

// Java program to illustrate the
// Java.lang.Integer.numberOfTrailingZeros() method
import java.lang.*;
public class TrailingZeros {
public static void main(String[] args) {
int a = 155 ;
System.out.println( "Integral Number = " + a);
// Returns the number of zero bits following the lowest-order
//rightmost one-bit
System.out.print( "Number of Trailing Zeros = " );
System.out.println(Integer.numberOfTrailingZeros(a));
a = 24 ;
System.out.println( "Integral Number = " + a);
// Returns the number of zero bits following the lowest-order
//rightmost one-bit
System.out.print( "Number of Trailing Zeros = " );
System.out.println(Integer.numberOfTrailingZeros(a));
}
}


输出:

Integral Number = 155
Number of Trailing Zeros = 0
Integral Number = 24
Number of Trailing Zeros = 3

注: 在这里,155的尾随零的数量等于0,这是因为在二进制表示10011011中,在最低阶(即最右边或最低有效“1”位)一位之后没有零。

项目2: 对于负数。

// Java program to illustrate the
// Java.lang.Integer.numberOfTrailingZeros() method
import java.lang.*;
public class TrailingZeros {
public static void main(String[] args) {
int a = - 1 ;
System.out.println( "Integral Number = " + a);
// Returns the number of zero bits following the lowest-order
//rightmost one-bit
System.out.print( "Number of Trailing Zeros = " );
System.out.println(Integer.numberOfTrailingZeros(a));
a = - 90 ;
System.out.println( "Integral Number = " + a);
// Returns the number of zero bits following the lowest-order
//rightmost one-bit
System.out.print( "Number of Trailing Zeros = " );
System.out.println(Integer.numberOfTrailingZeros(a));
}
}


输出:

Integral Number = -1
Number of Trailing Zeros = 0
Integral Number = -90
Number of Trailing Zeros = 1

方案3: 对于十进制值。 注: 当十进制值作为参数传递时,它返回一条错误消息。

// Java program to illustrate the
// Java.lang.Integer.numberOfTrailingZeros() method
import java.lang.*;
public class TrailingZeros {
public static void main(String[] args) {
System.out.println( "Number of trailing zeros = " +
Integer.numberOfTrailingZeros( 12.66 ));
}
}


输出:

prog.java:10: error: incompatible types: possible lossy conversion from double to int
     Integer.numberOfTrailingZeros(12.66));
                                   ^
Note: Some messages have been simplified; recompile with 
-Xdiags:verbose to get full output
1 error

方案4: 对于字符串值。 注: 当字符串值作为参数传递时,它返回错误消息。

// Java program to illustrate the
// Java.lang.Integer.numberOfTrailingZeros() method
import java.lang.*;
public class TrailingZeros {
public static void main(String[] args) {
System.out.println( "Number of trailing zeros = "
+ Integer.numberOfTrailingZeros( "12" ));
}
}


输出:

prog.java:10: error: incompatible types: String cannot be converted to int
                           + Integer.numberOfTrailingZeros("12"));
                                                           ^
Note: Some messages have been simplified; recompile with 
-Xdiags:verbose to get full output
1 error
© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享