这个 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