java中 num=num>>1;这句语句是什么意思,求高人解释下

publicclasstest{publicstaticvoidmain(String[]args){tobin(6);}publicstaticvoidtobin(in... public class test {
public static void main(String[] args)
{
tobin(6);
}
public static void tobin(int num)
{
while(num!=0)
{
System.out.println(num%2);
num=num>>1;
}
}
}
上面这个例子我想知道 num=num>>1; 是什么意思。
展开
 我来答
fyw1126
2014-02-23 · 超过12用户采纳过TA的回答
知道答主
回答量:99
采纳率:0%
帮助的人:47万
展开全部
将num右移1位(也即除以2),然后再将结果赋值给num
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yugi111
2014-02-23 · TA获得超过8.1万个赞
知道大有可为答主
回答量:5.1万
采纳率:70%
帮助的人:1.4亿
展开全部
移位:左乘,右除。
追问
可以再清楚点吗,我真的不懂,移位移哪,左乘右除又是什么?
追答
public class TestSort
{
public static void main(String[] args)
{
tobin(6);
}

public static void tobin(int num)
{
while(num != 0)
{
// 6 3 1
// 0000 0110 0000 0010 0000 0001
num = num >> 1; // 右移一位 除以2的一次方
// 0000 0010 0000 0001 0000 0000
// 3 1 0

System.out.println(num);
// 3 1 0
}
}
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式