Java 位运算理解 Java中的位移运算整理 Java右移n位 Java左移n位
一、概述
1、在浏览一篇文章时,看到一个介绍 ,使用位移操作替代乘除法 ,若位移多位该怎么计算呢?
二、代码理解
1、Java中位运算: 左移
/**
* @Description: Java 位运算 左移 用 "<<" 符号表示
* @return void
* @version v1.0
* @author wu
* @date 2021年11月24日 下午23:47:28
* @remarks: 左移n位,即乘以 2^n (2的n次幂)
*/
@Test
public void left() {
int x = 3 << 1 ; // 左移1位, 等价于 3*2
int y = 3 << 2 ; // 左移2位, 等价于 3*2*2
int z = 3 << 3 ; // 左移3位, 等价于 3*2*2*2
int zz = 3 << 5 ; // 等价于: 3*2^5; num 左移n位,即: num*2^n
System.out.println(x);
System.out.println(y);
System.out.println(z);
System.out.println(zz);
System.out.println(3*Math.pow(2, 5));
}
2、Java中位运算:右移
/**
* @Description: Java中位运算 右移 ">>" 符号表示
* @return void
* @version v1.0
* @author wu
* @date 2021年11月24日 下午23:50:38
* @remarks: 右移n位,即除以2^n (2的n次幂)
*/
@Test
public void right() {
int x = 32 >> 1 ; // 右移1位, 等价于 32/2
int y = 32 >> 2 ; // 右移2位, 等价于 32/2^2
int z = 32 >> 3 ; // 右移3位, 等价于 32/2^3
int zz = 32 >> 5 ; // 等价于 32/2^5 ; num右移n位,即: num/2^n
System.out.println(x);
System.out.println(y);
System.out.println(z);
System.out.println(zz);
System.out.println(32 / Math.pow(2, 5));
}
三、总结
1、Java中位运算,左移: 表示乘以 ;左移n位,即乘以 2^n (2的n次幂)
2、Java中位运算,右移:表示除以 ; 右移n位,即除以2^n (2的n次幂)
标签:右移,Java,运算,中位,32,左移 来源: https://blog.csdn.net/HaHa_Sir/article/details/121744807
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。