java右移位_java、、移位操作方法
<
int leftShift = 10;
System.out.println("十进制:" + leftShift + ", 二进制:" + Integer.toBinaryString(leftShift));
int newLeftShift = letfShift << 2;
System.out.println("左移2位后十进制:" + newLeftShift + ", 左移2位后二进制" + Integer.toBinaryString(newLeftShift)); //正整数x左移n位后的十进制结果,x = x * 2^n
以上是正整数,运算结果如下。
接下来看看将负数进行左移2位操作是什么情况,运算结果如下。
为什么会-10的二进制会出现这么多的1呢?仔细数一下刚好有32位。首先需要了解的是Java负数存储是以补码形式存储的(补码=反码+1),10的二进制是1010,它的反码就是0101,再加1就是补码0110。那为什么会多出来那么多1呢?这是因为int型在Java中占8个字节,刚好32位,10原码的高位全是0,它的反码自然高位就变成了1。所以整体左移2位,低位以0补齐,最后的运算结果就是x = (|x| + 2^n)。
>>,有符号右移位,将运算数的二进制整体右移指定位数,整数高位用0补齐,负数高位用1补齐(保持负数符号不变)。
int rightShift = 10;
System.out.println("十进制:" + rightShift + ", 二进制:" + Integer.toBinaryString(rightShift));
int newRightShift = rightShift >> 2;
System.out.println("右移2位后十进制:" + newRightShift + ", 右移2位后二进制" + Integer.toBinaryString(newRightShift)); //右移n位后的运算数x十进制结果,x = x / 2
以上是正整数,运算结果如下。
接下来看看将负数进行右移2位操作是什么情况,运算结果如下。
负数的有符号右移基本原理还是和左移相同,不同的是结果的计算,因为这是有符号的右移,一直右移最后的结果就会是-1。归纳起来就是,如果运算数是偶数,那么它的运算结果就是 x = -(|x| / 2),如果运算数是奇数,那么它的运算结果就是 x = -(|x| / 2) - 1。
>>>,无符号右移位,不管正数还是负数,高位都用0补齐(忽略符号位)
先看正数,正数的>>>无符号右移位和>>有符号右移位计算结果相同
int rightShift = 10;
System.out.println("十进制:" + rightShift + ", 二进制:" + Integer.toBinaryString(rightShift));
int newRightShift = rightShift >>> 2;
System.out.println("右移2位后十进制:" + newRightShift + ", 右移2位后二进制" + Integer.toBinaryString(newRightShift)); //右移n位后的云算数x十进制结果,x = x / 2
以上是正整数,运算结果如下。
接下来看负整数,运算结果如下。
虽然无符号移位后的二进制和有符号移位后的二进制看起来相同的,但结果大相径庭,记住有符号右移位操作,实际上是忽略符号的算术操作,即高位统一补0。
以上这篇java<>、>>>移位操作方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章:

系统集成性研究
视频监控平台不可以作为集成中心。无论其能够处理的数据类型,还是是其 互联互通需定制开发网关转载于:https://www.cnblogs.com/jcode/archive/2013/04/29/3050807.html

quartz在集群环境下的最终解决方案
在集群环境下,大家会碰到一直困扰的问题,即多个 APP 下如何用 quartz 协调处理自动化 JOB 。大家想象一下,现在有 A , B , C3 台机器同时作为集群服务器对外统一提供 SERVICE :A , B ࿰…

【通知】2021-2022-1线性代数课程答疑安排
2021-2022-1线性代数课程答疑安排 本学期线性代数课程答疑安排如下: 答疑时间:每周二 13:00-14:30;答疑地点:教七楼202(信息教研室); 答疑教师排班如下: 第五周&…

解压zip_go|用Go写一个zip解压脚本
用服务器自带的unzip命令解压zip包时,经常遇到编码问题,所以用Go写一个zip解压脚本来处理zip包代码如下:package mainimport ("archive/zip""bytes""flag""fmt""io""io/ioutil"…

springmvc常用注解标签详解
参考:https://www.cnblogs.com/leskang/p/5445698.html 1、Controller 在SpringMVC 中,控制器Controller 负责处理由DispatcherServlet 分发的请求,它把用户请求的数据经过业务处理层处理之后封装成一个Model ,然后再把该Model 返…

python基础学习-5(包与模块)
包和模块: 模块导入,会将模块(xxx.py编译为xxx.pyc,以便于下次直接使用) Python搜索模块的路径:1) 程序的主目录2) PTYHONPATH目录(如果已经进行了设置)3) 标准连接库目录(一般在/usr/local/lib/python2…

【青少年编程】【四级】数字之和
「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),公众号后台回复【Scratch】或【Python】,即可进入。如果加入了之前的社群不需要重复加入。 我们将有关编程题目的教学视频已经发布到抖音号21252972100,小马老…
ios uiview 如何刷新_UIView的重绘及布局刷新
本文将简要讨论以下几个问题:1、UIView的drawRect方法的调用机制及注意点2、UIView的layoutSubviews、layoutIfNeeded、setNeedsLayout等方法的调用机制3、如何通过更新view的约束值来实现动画效果博客配图重绘机制 - drawRect方法定义Drawing and Updating the Vie…

Ueditor和CKeditor 两款编辑器的使用与配置
一丶ueditor 百度编辑器 1.官方文档,演示,下载地址:http://ueditor.baidu.com/website/index.html 2.百度编辑器的好:Editor是由百度web前端研发部开发所见即所得富文本web编辑器,具有轻量,可定制ÿ…

Datawhale组队学习周报(第032周)
希望开设的开源内容 目前Datawhale的开源内容分为两种:第一种是已经囊括在我们的学习路线图内的Datawhale精品课,第二种是暂未囊括在我们的学习路线图内的Datawhale打磨课。我们根据您的投票来确定精品课程的排期,打磨课程一旦完成ÿ…

常建的性能指标
1、响应时间响应时间指的是“系统响应时间”,定义为应用系统从发出请求开始到客户端接收到响应所消耗的时间。把它作为用户视角的软件性能的主要体现。它包括网络上的传输时间,web服务器上处理时间,APP服务器上处理时间,DB服务器上…

东野圭吾最值得看的书排行榜_东野圭吾最值得看的7本作品,我进了坑就再也没出来...
自从读了东野圭吾的《解忧杂货店》,我便一发不可收拾,成了这位日本推理大佬的脑残粉。 有的人说不清他哪里好,但就是想戒也戒不掉!读了东野圭吾几乎所有作品后,我盘点了「东野圭吾作品必读top 7」,拿去不谢—— 07《圣女的救济》 一场真正的“完美谋杀”! 男子在家中死亡…

【青少年编程】【四级】用逗号分隔列表
「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),公众号后台回复【Scratch】或【Python】,即可进入。如果加入了之前的社群不需要重复加入。 我们将有关编程题目的教学视频已经发布到抖音号21252972100,小马老…

Console-算法-一个偶数总能表示为两个素数之和
ylbtech-Arithmetic:Console-算法-一个偶数总能表示为两个素数之和1.A,Demo(案例)【程序84】题目:一个偶数总能表示为两个素数之和。1.程序分析: 1.B,Solution(解决方案)【不太理解】using System;namespace ConsoleApplication1 …

day16-筛选器以及Tab菜单示例
一、前言 之前我们学习dom写Tab菜单示例,今天我们来学习一下常用的筛选器和Tab菜单示例。 二、操作的html <head><meta charset"UTF-8"><title>Title</title><style>.header{background-color: black;color: white;cursor:…

nginx和mysql链接_nginx转发mysql连接
场景:访问UAT环境,只能使用客户电脑访问,太难用了,于是就需要在自己电脑上跑代码,通过客户电脑中转来访问uat环境的数据库。选用nginx进行转发。配置如下:stream {upstream cloudsocket {hash $remote_addr…

两个有序单链表的并交差运算
/*实验2.6:求集合(有序单链表表示)的并、交和差运算*/ #include<iostream> #include<malloc.h> using namespace std; typedef char ElemType; typedef struct LNode {ElemType data;struct LNode *next; }LinkList; void Displa…

【青少年编程】【蓝桥杯】排队购票
「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),公众号后台回复【Scratch】或【Python】,即可进入。如果加入了之前的社群不需要重复加入。 我们将有关编程题目的教学视频已经发布到抖音号21252972100,小马老…
Linux (CentOS 7 )下搭建局域网SVN服务器+SVN权限配置
准备 公司内部需要配置局域网SVN,需要在在内部虚拟机服务器搭建,搭建过程做个记录,供参考。注:如果条件允许,尽量在windows下搭建svn服务器,很省事,尤其是权限配置非常方便又易懂,效…

mysql事件探查器_【干货】Mysql的事件探查器-之Mysql-Proxy代理实战一(安装部署与实战sql拦截与性能监控)...
1:资料参考https://blog.csdn.net/coldljy/article/details/3168906https://www.cnblogs.com/jwentest/p/8552075.htmlhttps://www.cnblogs.com/ExMan/p/10396298.html一:原理Mysql-Proxy是一个处于你的client端和Mysql Server端之间的一个简单程序,它可…

【青少年编程】【蓝桥杯】绘制莲花图形
「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),公众号后台回复【Scratch】或【Python】,即可进入。如果加入了之前的社群不需要重复加入。 我们将有关编程题目的教学视频已经发布到抖音号21252972100,小马老…

问题总结两天来两场实习面试(中科创达、华为)
查了好多资料,发现还是不全,干脆自己整理吧,至少证保在我的做法正确的,以免误导读者,也是给自己做个记录吧! 昨天下午去的中科创达口试 今天下午刚刚结束为华的练习生口试,月五二号去上机试笔&a…
不想被问年终奖?2018年春节自救攻略来了!
转眼间,春节即将来临!当然按捺不住那颗归家的心~但是想到回家,就要接受来自七大姑八大姨的亲切问候,美好的假期变得不怎么美好了,瞬间忧伤起来~对象难找、年终奖少,当被七姑八姨问起时,内心总会产生抵触情绪…

mysql complete_mysql 无意重启 [Note] /usr/sbin/mysqld: Normal shutdown
情况:今早发现,昨天下午安装的4台mysql服务器,突然出现,由于在shell窗口(rootlocalhost:mysql.sock) [(none)]> 190102 18:12:16 mysqld_safe mysqld from pid file /home/data/mysqldata/3306/data/mysql3.pid ended什么情况&…

redis 数据结构 内存管理 持久化
为什么80%的码农都做不了架构师?>>> Redis 内存数据结构与编码 OBJECT encoding key、DEBUG OBJECT key简单动态字符串(simple dynamic string)链表(linked list)字典(dict)跳表&am…

【青少年编程】【蓝桥杯】水仙花数
「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),公众号后台回复【Scratch】或【Python】,即可进入。如果加入了之前的社群不需要重复加入。 我们将有关编程题目的教学视频已经发布到抖音号21252972100,小马老…

本地 无法启动 SQL Server 错误代码126
Windows 不能在 本地计算机 启动 SQL Server 。错误代码126. 2008 R2 配置工具 VIA设置禁用。 然后重启一下服务 转载于:https://www.cnblogs.com/wuxinyu/archive/2013/05/08/3068008.html

mysql 表的继承,MySQL是否支持表继承?
I have this code in PostgreSQLCREATE TABLE first (id serial,primary key(id));CREATE TABLE second (primary key(id)) INHERITS (first);What is the equivalent code for MySQL?解决方案MySQL does not support table inheritance. The only way to approximate the fun…

C#编程概念系列(一):面向对象编程
系列文章索引目录:http://www.cnblogs.com/loner/archive/2013/05/09/3068211.html 引子: 面向对象编程:这个在当下已不是什么时髦的概念,但通过自己的语言组织描述出来可能会有点意外的收获! 记得最近看的乔布斯在199…

【青少年编程】【四级】数字反转
「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),公众号后台回复【Scratch】或【Python】,即可进入。如果加入了之前的社群不需要重复加入。 我们将有关编程题目的教学视频已经发布到抖音号21252972100,小马老…