
提取一个int类型数最右侧的1
发布日期:2021-05-08 23:20:45
浏览次数:14
分类:博客文章
本文共 516 字,大约阅读时间需要 1 分钟。
提取一个int类型数最右侧的1
算法描述
把一个int类型的数,提取出最右侧的1来,例如:
6 对应的二进制位 0000 0110,那么取出来的应该是0000 0010
算法思路
对原数0000 0110取反,将原数右侧1右边的0位全变成了1(1111 1001),这时候如果加1,会产生进位到原数右侧非零位,信息得以记录,再与原数与操作,即可将1提取.
图示:
代码:
public static void findBit1RightNumber(int number){ int temp = ~number; temp += 1; temp = number & temp; System.out.println("取出右边的1为:"+intToBinary(temp));}/*** 这一段是工具,将整数转二进制,前面补零* */public static String intToBinary(int num){ //1.补零 String binaryStr = Integer.toBinaryString(num); int bitNum = 8; if(bitNum
发表评论
最新留言
路过,博主的博客真漂亮。。
[***.116.15.85]2025年04月17日 20时57分32秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
基于vue2.0实现仿百度前端分页效果(二)
2019-03-06
JS魔法堂:函数重载 之 获取变量的数据类型
2019-03-06
时间序列神器之争:Prophet VS LSTM
2019-03-06
SpringBoot中关于Mybatis使用的三个问题
2019-03-06
MapReduce实验
2019-03-06
Leaflet 带箭头轨迹以及沿轨迹带方向的动态marker
2019-03-06
java大数据最全课程学习笔记(1)--Hadoop简介和安装及伪分布式
2019-03-06
java大数据最全课程学习笔记(2)--Hadoop完全分布式运行模式
2019-03-06
大部分程序员还不知道的 Servelt3 异步请求,原来这么简单?
2019-03-06
[apue] popen/pclose 疑点解惑
2019-03-06
[apue] getopt 可能重排参数
2019-03-06
移动互联网恶意软件命名及分类
2019-03-06
adb shell am 的用法
2019-03-06
PySide图形界面开发(一)
2019-03-06
Android如果有一个任意写入的漏洞,如何将写权限转成执行权限
2019-03-06
三角网格体积计算
2019-03-06
现代3D图形编程学习-基础简介(2) (译)
2019-03-06
Github教程(3)
2019-03-06
vue实现简单的点击切换颜色
2019-03-06
vue3 template refs dom的引用、组件的引用、获取子组件的值
2019-03-06