永发信息网

java算法问题 在java里 i>>1 和 i/2 那个比较快 ? i>>1和i>>>1的区别是什么?

答案:3  悬赏:60  手机版
解决时间 2021-11-07 07:03
java算法问题 在java里 i>>1 和 i/2 那个比较快 ? i>>1和i>>>1的区别是什么?
最佳答案
当然是i>>1快 计算机的底层是二进制的 不管什么语言直接操作二进制肯定比操作十进制要快的
>> 和 >>> 都表示右移 但 >>> 表示无符合右移,例如
int a = -16; 11111111111111111111111111110000
a >> 1; 结果 -8 11111111111111111111111111111000
a >>> 1; 结果 2147483640 1111111111111111111111111111000 相当于
01111111111111111111111111111000

也就是说 >>> 不管你原来的是正数还是负数 它右移后都是在最高位补0
而 >> 会根据原来数的正负来决定最高位是补0(正数),还是补1(负数)
>> 与 >>> 只有在被移位的数是负数时结果不一样 当被移位的数为正数时结果是一样的
全部回答
肯定是位运算的速度快了。

>> : 右移位运算 >>>:无符号右移为运算
>> 与>>>的最大区别:右移时,在高位的补充;>>是补充原来的高位数。>>>是补充0.
i>>1快,而且占用资源少。i>>1=i/2,i>>>1表示正负表示位也移动,如果是负数就变成正数了,而且当i为正数时i>>>1等于i/2,i为负数时不相等,因为表示负数的位也变成数值了
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
为什么我的电脑玩英雄联盟,玩着玩着就自动重
泉州市电动自行车绿牌为何只上一个牌子
为什麼英文i和me都是指我的意思?
砂率变小,强调不变,是增加水泥用量还是减少
丅0丅0马桶报价cw864
房产开发企业审计重点有哪些
高考英语听力需要收音机吗
有懂皮肤长东西的人吗
AE中用钢笔不需要的如何清除
广东桥头到兴义多少车费
家传的铜瓶子高四十厘米有价值吗?
2o16年泰国斯坦佛大学酒店管理专业学费是多少
求该植物的学名
联系上下文解释词语:颓然,墨汁淋漓《启示》
求解答这是哪位姐姐
推荐资讯
怎么使用脱水机,就是甩干桶?!
求sw-517三位女主名字
一枝花羊汤馆晋城店在哪里啊,我有事要去这个
首层架空层算建筑面积,算不算人容积率?
这个【】键盘上有没有
挖机摊铺水稳能否先碾压在用挖机整平。可以的
熟菱角米放在冷冻室可保存多久
我家还没入住水闸关了楼下厨房还漏水
哈尔滨市三层成人铁床商家
巨野102公交车路线图全部站点
比熊的狗狗把枣核吃下去了怎么办啊
蚌埠国庆路牛肉多少钱一斤对外批发
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?