黑马程序员技术交流社区
标题:
以下循环哪里出了问题?
[打印本页]
作者:
尘埃落定
时间:
2014-7-18 17:03
标题:
以下循环哪里出了问题?
如下内容:
十进制转十六进制的代码,为什么结果不对?
public static void toHex(int num)
{
StringBuffer sb = new StringBuffer();
while (num!=0)
{
int n1 = num&15;
System.out.println(n1);
if (n1>9)
{
sb.append((char)(n1-10+'a'));
}
else
{
sb.append(n1);
}
n1 = n1>>>4;
}
System.out.println(sb.reverse());
}
复制代码
作者:
More
时间:
2014-7-18 17:27
sb.reverse()这个方法在哪??
作者:
尘埃落定
时间:
2014-7-18 18:06
More 发表于 2014-7-18 17:27
sb.reverse()这个方法在哪??
发现错误了,右移四位的是num,不是n1。
作者:
shijianws
时间:
2014-7-18 18:09
sb.reverse(),字符串缓冲里有,反转字符串的字符
作者:
More
时间:
2014-7-18 20:47
尘埃落定 发表于 2014-7-18 18:06
发现错误了,右移四位的是num,不是n1。
意思是你那个方法定义了 但是你没复制过来是吧
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2