当前位置: 代码迷 >> Java相关 >> java的位运算
  详细解决方案

java的位运算

热度:51   发布时间:2012-10-04 02:01:05.0
java的位运算
程序代码:
class nm
{
    public static void main(String[] args)
    {
int num1=60;int i=0,j;
int n1,temp1;
char s[]=new char[12];
while(num1!=0) num1为0时候,退出循环
{
n1=num1&15;
temp1=n1>9?(n1-10+'A'):(n1-0+'0');
s[i]=(char)temp1;
i++;
num1=num1>>>4;
}
for(j=i-1;j>=0;j--)
        {
System.out.print(s[i]);
}

}
}
//这是为了输出二进制数的16进制的形式
请帮我看看把!我不知道这里到底错在哪里,在电脑上是出现的死循环!
搜索更多相关的解决方案: java  

----------------解决方案--------------------------------------------------------
System.out.print(s[j]);

怎么会是死循环?num1的值最后会变成0的。

LZ的C学好了么?又跑来学Java了。
----------------解决方案--------------------------------------------------------
好犀利 ,居然发现楼主在C出现过
----------------解决方案--------------------------------------------------------
程序代码:
class nm {
    public static void main(String[] args) {
        int num1 = 60;
        int i = 0, j;
        int n1, temp1;
        char s[] = new char[12];
        while (num1 != 0) // num1为0时候,退出循环
        {
            n1 = num1 & 15;
            temp1 = n1 > 9 ? (n1 - 10 + 'A') : (n1 - 0 + '0');
            s[i] = (char) temp1;
            i++;
            num1 = num1 >>> 4;
        }
        for (j = i - 1; j >= 0; j--) {
            System.out.print(s[j]);
        }

    }
}

----------------解决方案--------------------------------------------------------
强悍
----------------解决方案--------------------------------------------------------
  相关解决方案