博学谷——让IT教学更简单,让IT学习更有效 5、~:按位取反
00000011 ~:11111100 原码:1 1111100 反码:1 0000011 补码:1 0000100 所以:~3=-4
6、<<:左移
00000011 <<2 ————————— 00001100
所以:3<<2=12
7、定义Example07类,其代码如下:
class Example09 { }
public static void main(String[] args) { }
System.out.println(4&3); System.out.println(4|3); System.out.println(4^3); System.out.println(~3);
System.out.println(3<<2);
运行结果如图2-10所示。
图2-10 运行结果
由此可见,二进制位运算与程序运算的结果一致。
三、案例总结
Java中的位运算符以及其范例如下错误!未找到引用源。所示。 运算符 运算 范例 0 & 0 0 & 1 1 & 1 1 & 0 0 | 0 0 | 1 结果 0 0 1 0 0 1 13
& 按位与 | 按位或 博学谷——让IT教学更简单,让IT学习更有效
1 | 1 1 | 0 ~ 取反 ~0 ~1 0 ^ 0 ^ 按位异或 0 ^ 1 1 ^ 1 1 ^ 0 << >> >>>
左移 右移 无符号右移 00000010<<2 10010011<<2 01100010>>2 11100010>>2 01100010>>>2 11…11100010>>>2 1 1 1 0 0 1 0 1 00001000 01001100 00011000 11111000 00011000 0011…111000 案例2-10 运算符的优先级
一、案例描述
1、 考核知识点
编号:00102013
名称:运算符的优先级
2、 练习目标
? 掌握运算符之间的优先级
3、 需求分析
当使用不同的运算符进行运算时,应该按照一定的顺序进行运算,即根据运算符的优先级进行运算。为了让初学者掌握运算符的优先级,本案例将通过表达式的运算,讲解运算符的优先级。
4、 设计思路(实现原理)
1) 编写一个类Example10
2) 在main方法中定义两个int型变量x和y 3) 将表达式3>2*x?x++:--x赋值给y 4) 用输出语句分别输出变量x和y的值
二、案例实现
定义Example10类,其代码如下:
class Example10 {
public static void main(String[] args) {
int x=1;
14
博学谷——让IT教学更简单,让IT学习更有效
int y=0;
y=3>2*x?x++:--x;
System.out.println(x); System.out.println(y); } }
运行结果如图2-11所示。
图2-11 运行