public class Test_10 {
public static void main(String[] args) {
int n=254;
String str="";
for(int i=0x80000000;i!=0;i>>>=1){
str+=(n&i)==0?'0':'1';
}
System.out.print(str

展开全部
收起
2回答
提交回答
  • 至过去的我

    2044人对此回答表示赞同

    我是未来的你,你现在是不是在年找寻小程序答案。你不要感觉诧异,给你来信原因,就是让你不在后悔。今天去学习如何推广小程序,相信......点击查看更多>
    发布于
  • Aaliyah

    11人对此回答表示赞同

    0x80000000是16进制的数字,前面的0x代表的是16进制,后面的80000000是16进制,转换为2进制后每一位的数都变成4位的由0,1组成的数字,像8转换为2进制后为1000。
    程序的for循环是说i=0x80000000,i不等于0,i移位一次,str=str+(n&i),其中(n&i)的值有可能等于0,也有可能等于1,如果n&i=0,则返回0,否则返回1,等到的0或1再与str相加,每次循环加一次,知道i=0结束,最后输出str的值。
    展开
    11
    0回复
    发布于 5年前

    评论(0)

    收起评论

  • 空空如也

    11人对此回答表示赞同

    0x80000000是十六进制,转为int 是0.
    0x80000000的二进制是
    0100,0000,0000,0000,0000,0000,0000,0000
    转化为int时,只取前四个字节,舍去多余的头,就是:
    0000,0000,0000,0000
    也就是0
    展开
    11
    0回复
    发布于 5年前

    评论(0)

    收起评论

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
咨询热线

13312967497

扫码添加业务即可随时咨询 还可领取小程序推广攻略

业务咨询: 13312967497
扫码咨询

扫码咨询套餐

回到顶部