标签:
JAVA操作符
赋值操作符
右值可以是任意的常量、变量或表达式(只要可以生成一个值)。
左值必须是一个明确的、已命名的变量。
算术操作符
以下两种写法是等价的:
一元操作符
自增与自减操作符
自增操作符是++。自减操作符是--。
例:++a 等价于 a = a+1;
自增和自减操作都可以分为前缀式和后缀式。
以自增为例,
Output:
由此可见,前缀式是先递增,然后再代入表达式;而后缀式是先代入表达式,再对自身进行递增运算。
关系操作符生成的是一个 boolean 结果,它们计算的是操作数的值之间的关系。
如果关系是真的,关系表达式的结果为 true;反之,结果为 false。
关系操作符包括小于(<)、大于(>)、小于或等于(<=)、大于或等于(>=)、等于(==)以及不等于(!=)。
逻辑操作符
逻辑操作符包括与(&&)、或(||)、非(!),它们根据参数的逻辑关系,生成一个boolean值。
括号操作符
括号操作符(),可以提高括号中表达式的执行优先级。
Output:
位操作符
按位与(&)、按位或(|)、异或(^)、取反(~)、左移(<<)、右移(>>)、无符号右移(>>>)
三元操作符
三元操作符比较特殊,它有三个操作数。它的格式为:
(布尔表达式)? 值A : 值B
如果布尔表达式的值为true,则结果为值A;反之,结果为值B。
直接常量
一般说来,程序中使用了”直接常量“,编译器可以准确地知道要生成什么样的类型,但有时候却是模棱两可的。
直接常量后面的后缀字符可以标志它的类型。
若为大写(或小写)的 L ,表示 long 型。
十六进制数适用于所有整数数据类型,以前缀为 0x(或0X),后面跟随0~9或大小写的a~f。
八进制数由前缀0以及后续的0~7的数字来表示。
操作符的优先级和结合性
以下表格按照优先级由高到低的顺序展示了JAVA操作符:
级别 | 优先级 | 结合性 |
1 | [ ] . ( ) (函数呼叫) | 从左到右 |
2 | !~++--+(单操作数)–(单操作数)( ) (类型转化)new | 从右到左 |
3 | * / % | 从左到右 |
4 | + - | 从左到右 |
5 | << >> >>> | 从左到右 |
6 | < <= > >= instanceof | 从左到右 |
7 | == != | 从左到右 |
8 | & | 从左到右 |
9 | ^ | 从左到右 |
10 | | | 从左到右 |
11 | && | 从左到右 |
12 | || | 从左到右 |
13 | ? : | 从右到左 |
14 | = += -= *= /= %= ^= <<= >>= >>>= | 从右到左 |
《Thinking in Java》
标签:
原文地址:http://www.cnblogs.com/jingmoxukong/p/4015881.html