public class test {
public static void main( String[] arguments ) {
//十进制数value
for ( int value = 0; value < 64; value++ ) {
System.out.println( Integer.toBinaryString( value ) );
//二进制位数index
for ( int index = 0; index < 8; index++ ) {
//1为十进制,二进制=00000001;"1 << index ":二进制数向左移动index位(二进制数列仍然只有一个1);
// "( 1 << index ) & value":如果value在一样位数上有1,则输出"1 << index"的值;
//简而言之就是挨个检查二进制数列上每位的值
if ( ( ( 1 << index ) & value ) == ( 1 << index ) ) {
System.out.println("Value在"+(index+1)+"位上有1");
}
}
}
}
}
二进制数列遍历法
于 2019-10-06 22:52:46 首次发布