Java-003运算符与流程控制
本帖最后由 moc 于 2018-12-20 16:06 编辑1、运算符
1. 算术运算符
+加法 -减法
*乘法 /除法
% 取余 ++ 自增 --自减
与C/C++中的用法一致。
2. 赋值运算符
数值赋值: =,+=,-=,*=,/=,%=,
位操作赋值: <<=,>>=,&=,|=,^=
与C/C++中的用法基本一致;
注意:扩展赋值隐含强制类型转换。
short a = 1; a = a + 1; (error)
short a = 1; a += 1; (right)
a += 1; 相当于 a = (short) (a+1);
3. 比较操作符
==,!=,>,>=,<,<=
与C/C++中的用法一致。
4. 逻辑操作符
&&,||, !
与、或、非逻辑操作,具有短路效应。
5. 位操作符
操作符: & | ^ 〜 << >> >>>
按位: 与 或 非 取反 左移(补0) 有符号右移(补正0负1) 无符号右移(补0)
6. 条件操作符
? :
也即三目运算符,与CC/C++中的用法一致。
5.instanceof 运算符
该运算符用于操作对象实例,检查该对象是否是一个特定类型(类类型或接口类型)。
下面是一个例子:
String name = "moc";
boolean result = name instanceof String; // 由于 name 是 String 类型,所以返回真
6. 运算符优先级
类别|操作符|结合性
后缀、括号|() [] . (点操作符)|左到右
一元 |+ + - !〜 |从右到左
乘性 |* /% |左到右
加性 |+ -|左到右
移位 |>> >>><< |左到右
关系 |>> = << = |左到右
相等 |==!=|左到右
按位与|&|左到右
按位异或|^|左到右
按位或|\||左到右
逻辑与|&&|左到右
逻辑或|\|\||左到右
条件 |?:|从右到左
赋值 |= + = - = * = / =%= >> = << =&= ^ = \| =|从右到左
逗号|,|左到右
2、流程控制
1. 条件语句
① if ... else if ... else ...
与C/C++中的用法一致。
② switch ... case ... default ...
与C/C++中的用法一致,switch 语句中的变量类型可以是: byte、short、int 或者 char。从 Java SE 7 开始,switch 支持字符串 String 类型了,同时 case 标签必须为字符串常量或字面量。
2. 循环语句
① for (;;)
与C/C++中的用法一致,Java5 起引入了一种用于数组的增强型 for 循环。
for(声明语句 : 表达式) {
//代码句子
}
声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素的值相等。
表达式: 表达式是要访问的数组名,或者是返回值为数组的方法。
② while() {}
与C/C++中的用法一致。
③ do...while()[;/b]
与C/C++中的用法一致。
3、控制跳转语句
① continue
适用于任何循环控制结构中; 作用是让程序立刻跳转到下一次循环的迭代。
② break
跳出最里层的循环,并且继续执行该循环下面的语句;配合标签语句可跳出多层循环。
wc:for(int x=0; x<3; x++) {
nc:for(int y=0; y<4; y++) {
if(y == 2) {
//break nc;
break wc;
}
System.out.print("*");
}
System.out.println();
}
页:
[1]