当前位置: 首页 > news >正文

淄博专业网站建设公司店铺推广渠道有哪些

淄博专业网站建设公司,店铺推广渠道有哪些,福永附近网站建设公司,微官网下载2019独角兽企业重金招聘Python工程师标准>>> 最近看HashMap源码,遇到了这样一段代码: static final int hash(Object key) {int h;return (key null) ? 0 : (h key.hashCode()) ^ (h >>> 16); } 于是我整理学习了以下知识&#x…

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

最近看HashMap源码,遇到了这样一段代码:

static final int hash(Object key) {int h;return (key == null) ? 0 : (h = key.hashCode()) ^ (h >>> 16);
}

于是我整理学习了以下知识:

十进制转二进制

原理:给定的数循环除以2,直到商为0或者1为止。将每一步除的结果的余数记录下来,然后反过来就得到相应的二进制了。

比如8转二进制,第一次除以2等于4(余数0),第二次除以2等于2(余数0),第三次除以2等于1(余数0),最后余数1,得到的余数依次是0 0 0 1 ,

反过来就是1000,计算机内部表示数的字节长度是固定的,比如8位,16位,32位。所以在高位补齐,java中字节码是8位的,所以高位补齐就是00001000.

写法位(8)10=(00001000)2;

代码实现:

package sourceCode.hashMap;public class mapHashCodeTest {public static void main(String[] args) {String str = toBinary(8);System.out.println(str);}static String toBinary(int num) {String str = "";while (num != 0) {str = num % 2 + str;num = num / 2;}return str;}}

运行结果:1000

二进制转十进制

计算也很简单,比如8的二进制表示位00001000,去掉补齐的高位就是1000.此时从个位开始计算2的幂(个位是0,依次往后推)乘以对应位数上的数,然后得到的值想加

于是有了,(2的0次幂)*0+(2的1次幂)*0+(2的2次幂)*0+(2的3次幂)*1 = 8

代码实现,直接调用Integer.parseInt("",2);

System.out.println(Integer.parseInt("1000",2));

运行结果:8

位异或运算(^)

运算规则是:两个数转为二进制,然后从高位开始比较,如果相同则为0,不相同则为1。

比如:8^11.

8转为二进制是1000,11转为二进制是1011.从高位开始比较得到的是:0011.然后二进制转为十进制,就是Integer.parseInt("0011",2)=3;

位与运算符(&)

运算规则:两个数都转为二进制,然后从高位开始比较,如果两个数都为1则为1,否则为0。

比如:129&128.

129转换成二进制就是10000001,128转换成二进制就是10000000。从高位开始比较得到,得到10000000,即128.

位或运算符(|)

运算规则:两个数都转为二进制,然后从高位开始比较,两个数只要有一个为1则为1,否则就为0。

比如:129|128.

129转换成二进制就是10000001,128转换成二进制就是10000000。从高位开始比较得到,得到10000001,即129.

位非运算符(~)

运算规则:如果位为0,结果是1,如果位为1,结果是0.

比如:~37

在Java中,所有数据的表示方法都是以补码的形式表示,如果没有特殊说明,Java中的数据类型默认是int,int数据类型的长度是8位,一位是四个字节,就是32字节,32bit.

8转为二进制是100101.

补码后为: 00000000 00000000 00000000 00100101

取反为:    11111111 11111111 11111111 11011010

因为高位是1,所以原码为负数,负数的补码是其绝对值的原码取反,末尾再加1。

因此,我们可将这个二进制数的补码进行还原: 首先,末尾减1得反码:11111111 11111111 11111111 11011001 其次,将各位取反得原码:

00000000 00000000 00000000 00100110,此时二进制转原码为38

所以~37 = -38. 

转载于:https://my.oschina.net/u/3198904/blog/1648223

http://www.wooajung.com/news/34965.html

相关文章:

  • wordpress 更新缓存seo公司是什么意思
  • 做快照网站和推广 哪个效果好广州企业网站建设
  • 淘宝店铺转让平台哪个靠谱舟山百度seo
  • 网站 图片防盗链怎么申请网站空间
  • seo是什么意思啊电商优化生育政策
  • 网站空间大小怎么查看怎么联系百度客服
  • 做banner拉伸网站会糊免费刷网站百度关键词
  • 中国石化工程建设公司网站百度云搜索引擎入口官方
  • 网站跨省备案seochan是什么意思
  • 义乌建设局网站青岛网站设计
  • 做暧暧网站西安seo服务公司
  • 保定网站制作公司沈阳seo博客
  • 世界足球排名前100名杭州seo工作室
  • flask做的网站有哪些深圳网站建设推广方案
  • 怎么做棋牌网站上海seo网站优化
  • 微网站建设合同宁波seo教程行业推广
  • 购买腾讯备案网站外链管理
  • 有什么做酒和水果茶教程的网站杭州百度竞价推广公司
  • 上海企业建站咨询南京网站推广排名
  • 众筹网站建设应该具备哪些资质软文的本质是什么
  • 基于ipv6的网站开发营销网络的建设怎么写
  • 太原网站优化怎么做天津谷歌优化
  • 武进网站建设代理商整站优化价格
  • 宁波网站建设icp备线上营销推广方式有哪些
  • 溧阳网站建设价格软文推广策划方案
  • 东莞网站建设php方案seo教程技术
  • 陇南市武都区住房和城乡建设网站百度账号安全中心官网
  • 北京网站开开发公司电话怎么制作小程序
  • 为某公司或企业做的门户网站网络平台有哪些
  • 一个网站怎么做2个服务器陕西网络营销优化公司