The unsigned right shift operator “>>>” shifts a zero into the

leftmost position, while the leftmost position after “>>” depends on

sign extension.

所以,-1以零扩展向右移位一位,这意味着它会将0插入最左边的位置.记住,我们在这里处理two’s complement:

-1为:11111111111111111111111111111111或十六进制0xFFFFFFFF

-1>>> 1是十六进制中的01111111111111111111111111111111或0x7FFFFFFF,它是231 – 1 == 2147483647

你似乎对两个人的补充感到困惑.该值用于31位,并且最左边的位用于符号.由于你只是移位1位,有符号位变为0,这意味着正数,结果是最大的正数,而不是int可以表示.

也许另一个例子会有所帮助.我们来考虑一下:

System.out.println(-2 >> 1); //prints -1

-2 = 1111111111111111111111111111111110

如果我们使用已签名的右移,我们得到:11111111111111111111111111111111,这是-1.但是,如果我们这样做:

System.out.println(-2 >>> 1); //prints 2147483647

由于-2 = 11111111111111111111111111111110并进行无符号右移,这意味着我们以零扩展方式移位1位,给出:011111111111111111111111111111

Java添零右移_为什么Java中的整数为-1零填充右移1 = 2147483647?相关推荐

  1. java.lang.IllegalArgumentException: 字符[_]在域名中永远无效。 at

    [http-nio-8080-exec-1] org.apache.coyote.AbstractProcessor.parseHost [xxx_tomcat] 是无效主机注意:更多的请求解析错误将 ...

  2. java项目----教务管理系统_基于Java的教务管理系统

    java项目----教务管理系统_基于Java的教务管理系统 2022-04-22 18:18·java基础 最近为客户开发了一套学校用教务管理系统,主要实现学生.课程.老师.选课等相关的信息化管理功 ...

  3. java try catch嵌套_解析Java中未被捕获的异常以及try语句的嵌套使用

    Java未被捕获的异常 在你学习在程序中处理异常之前,看一看如果你不处理它们会有什么情况发生是很有好处的.下面的小程序包括一个故意导致被零除错误的表达式. class Exc0 { public st ...

  4. java 异常处理发生异常_处理Java中的异常

    java 异常处理发生异常 每个程序员都希望编写一个完美的程序. 也就是说,程序运行时没有任何障碍. 好吧,如果希望是马,乞g就会骑. 除了程序员的所有愿望之外,有时还会发生无法预料的情况. 在Jav ...

  5. java使用外部库_在Java中使用外部库

    java使用外部库 Java附带了一组核心库,其中包括定义常用数据类型和相关行为的库,例如String或Date : 与主机操作系统进行交互的实用程序,例如System或File : 有用的子系统来管 ...

  6. java 线程组作用_浅析Java中线程组(ThreadGroup类)

    一.概念 Java中使用ThreadGroup类来代表线程组,表示一组线程的集合,可以对一批线程和线程组进行管理.可以把线程归属到某一个线程组中,线程组中可以有线程对象,也可以有线程组,组中还可以有线 ...

  7. java xml dom4j 解析_在JAVA中怎么用DOM和DOM4j解析XML啊?

    二.XML文件 三.开始解析 public class JDOMTest { public static void main(String[] args) { // 进行对books.xml文件的JD ...

  8. java 文件内容排序_在Java中对2个大型文本文件进行排序的最佳方法是什么?

    我正在构建一个简单的 Java应用程序,涉及从csv文件中读取信息. csv文件中的信息以这种形式出现: "ID","Description" "AB ...

  9. java string最大长度_一个Java字符串中到底有多少个字符?

    作者:鸟窝 依照Java的文档, Java中的字符内部是以UTF-16编码方式表示的,最小值是 (0),最大值是(65535), 也就是一个字符以2个字节来表示,难道Java最多只能表示 65535个 ...

最新文章

  1. linux 脚本 alias,在shell脚本中使用alias别名
  2. android堆栈信息,android死锁致重启问题分析
  3. 自动登录DISCUZ,发帖的代码(部分)
  4. 对话中国经济和信息化-万祥军:李玉庭制造企业重整电商
  5. python中的请求方法_http协议的9种请求方法
  6. python统计分析---6.主成分分析
  7. [leetcode]14. 最长公共前缀
  8. ng-class使用
  9. qq视频转码失败怎么办_视频里提取音频的几种方法
  10. 基于slicer开发(简化功能与插件开发)
  11. php架构师都会有什么面试题,PHP架构师面试题目和答案
  12. Representation Learning with Contrastive Predictive Coding 论文阅读笔记
  13. win10磁盘100%占用
  14. ipad服务器的显示器,淘汰下来的iPad能干嘛,几招让其秒变显示器
  15. ffmpeg新手成长之路——使用av_seek_frame做seek定位
  16. COLMAP: Structure-from-Motion Revisited 论文解读
  17. android 高德地图方向指向不变问题分析
  18. python学习实验报告(第十周)
  19. vue3 简易等待图片加载的组件
  20. 基于51单片机PM2.5空气质量检测仪设计(毕设)

热门文章

  1. 万字长文讲解编码知识,看这文就够了!| 原力计划
  2. 从 Wi-Fi 6 的到来,看家庭网络的优化之路!
  3. 罗永浩出任“鲨纹科技”首席忽悠官;华为生产不含美国芯片的手机;PyCharm 2019.3 发布 | 极客头条...
  4. 12 种主流编程语言输出“ Hello World ”,你真的都会了吗?
  5. 马云:蚂蚁最应该感谢微信;波音软件修复文件不合格;谷歌开源Cardboard|极客头条...
  6. 一行Python代码能干什么?惊了!
  7. “近一个月”、“近三个月”这种查询如何处理更精确?
  8. 华为否认削减手机产量;百度副总裁郑子斌将离职;开发者对苹果发集体诉讼 | 极客头条...
  9. 漫画:如何给女朋友解释什么是编译与反编译
  10. 漫画:什么是字符集和编码?ASCII、UTF-8、UTF-16、UTF-32 又是什么?