操作符 / 整型操作符

来源:互联网 发布:apache 访问日志 编辑:程序博客网 时间:2024/05/18 03:13

“=”、“==”、“!=”操作符,它们不仅能操作各种基本类型,还能操作各种引用类型。

“+”操作符不仅能操作除 boolean 类型以外的基本类型,还能操作 java.lang.String 类型。

 

整型操作符的操作元类型可以是byte、short、char、int 和 long。

在计算表达式,如果有一个操作元是 long 型,那么结果也是 long 型;否则不管操作元是 bype、short 或者 char型,运算结果都是 int 型。

 

一元操作符

“++” 和 “--” 操作符会改变所作用的变量本身的值,而“-” 和 “~”操作符并不改变变量本身的值。

 

二元操作符

二元操作符并不改变操作元的值,而是返回可以赋给其他变量的值。

 

1、数学运算操作符

 

“+”、“-”、“*”

“/”:当操作元都是整数时,“/”除法操作的运算结果为商的整数部分。

“%”:当操作元都是整数时,取模操作符“%”的运算结果为这个数除法运算的余数部分。

如果吧一个正数除以0 或者对 0 取模,程序就会抛出 ArithmeticException 运行时异常。

 

2、位运算操作符

 

Java 语言支持整数类型数据的位运算,位运算操作符包括:

 

·“&” —— 与运算,二元操作符,对两个操作元的每个二进制位进行与运算,运算符规则为:1&1=1,1&0=0,0&1=0,0&0=0

·“^” —— 异或运算,二元操作符,对两个操作元的每个二进制位进行异或运算,运算符规则为:1^1=0,1^0=1,0^1=0,0^0=0

·“|” —— 或运算,二元操作符,对两个操作元的每个二进制位进行或运算,运算符规则为:1^1=1,1^0=1,0^1=1,0^0=0

·“~” —— 取反运算,二元操作符,对两个操作元的每个二进制位进行取反运算,运算符规则为:~1=0,~0=1

·“>>” —— 算术右移位运算,二元操作符

·“>>>” —— 逻辑右移位运算,二元操作符

·“<<” —— 左移位运算,二元操作符

 

1) 算术右移位操作符“>>”

操作符“>>”进行右移位运算,也称做带符号右移位运算

int a1 = 12 >> 1; //变量 a1 的取值为6

int a2 = -12 >> 2; //变量 a1 的取值为-3

int a3 = 128 >> 2; //变量 a1 的取值为32

int a4 = 129 >> 2; //变量 a1 的取值为32

2) 逻辑右移位操作符“>>>”

也称为不带符号右移操作符,在移位的过程中,二进制数的开头增加的位都是0。

int a1 = 12 >>> 1; //变量 a1 的取值为6

int a2 = -12 >>> 2; //变量 a1 的取值为1073741821

3) 左移位操作符“<<”

操作符“<<”执行左位移运算

int a1 = 12 >> 1; //变量 a1 的取值为24

int a2 = -12 >> 2; //变量 a1 的取值为-48

int a3 = 128 >> 2; //变量 a1 的取值为512

int a4 = 129 >> 2; //变量 a1 的取值为516

 

 

 

 

 

结果:

-96

16

-1