我是靠谱客的博主 迷路信封,这篇文章主要介绍CC00046.bigdatajava——|Java&运算符.V13|——|Java.v13|运算符.v13|移位运算符|编程|,现在分享给大家,希望可以做个参考。

一、[移位运算符概念使用]——了解
复制代码
1
2
3
4
5
### --- 移位运算符概念 ~~~ ——> << 左移运算符,用于将数据的二进制位向左移动,右边使用0补充 ~~~ ——> >> 右移运算符,用于将数据的二进制位向右移动,左边使用符号位补充 ~~~ ——> >>> 表示逻辑右移运算符,用于将数据的二进制位向右移动,左边使用0补充。
二、编程代码
复制代码
1
2
3
4
5
### --- 编程代码 /* 编程实现移位运算符的使用 */
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
public class MoveBitTest { public static void main(String[] args) { // 1.声明一个byte类型的变量并初始化 byte b1 = 13; // 2.打印变量的数值 System.out.println("b1 = " + b1); // b1 = 13 System.out.println("---------------------------------------------------"); // 3.移位运算符的使用 // 13的二进制是:... 0000 1101 => 左移1位的结果是:... 0001 1010 => 换算为十进制整数是:26 //byte b2 = b1 << 1; // 错误: 不兼容的类型: 从int转换到byte可能会有损失 自动提升为int类型,也就是32位二进制 byte b2 = (byte)(b1 << 1); System.out.println("b2 = " + b2); // 26 System.out.println(b1 << 1); // 26 左移1位相当于当前整数的数值*2 System.out.println(b1 << 2); // 52 左移2位相当于当前整数的数值*4 System.out.println("---------------------------------------------------"); // 13的二进制是:... 0000 1101 => 右移1位的结果是:... 0000 0110 => 换算为十进制整数是:6 System.out.println(b1 >> 1); // 6 右移1位相当于当前整数的数值/2 System.out.println(b1 >> 2); // 3 右移2位相当于当前整数的数值/4 System.out.println("---------------------------------------------------"); // 逻辑右移 对于非负数来说,逻辑右移和右移的效果一致 System.out.println(b1 >>> 2); // 3 } }
三、编译打印
复制代码
1
2
3
### --- 编译 C:UsersAdministratorDesktopproject>javac MoveBitTest.java
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
### --- 打印输出 C:UsersAdministratorDesktopproject>java MoveBitTest b1 = 13 --------------------------------------------------- b2 = 26 26 52 --------------------------------------------------- 6 3 --------------------------------------------------- 3

最后

以上就是迷路信封最近收集整理的关于CC00046.bigdatajava——|Java&运算符.V13|——|Java.v13|运算符.v13|移位运算符|编程|的全部内容,更多相关CC00046内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(71)

评论列表共有 0 条评论

立即
投稿
返回
顶部