思考:
1、请用高效的形式写出:2*8 2<<3
2、交换两个变量。
int a = 10;
int b = 20;
第一种做法:用第三方变量来做。(开发用)
int temp = a;
a = b;
b = temp;
第二种做法:用位异或来做。(面试用)
特点:一个数据对同一个数据位异或两次,值不变。
a = a^b; //a=a^b b的值不发生变化
b = a^b; //b= a^b^b b=a,a=a^b
a = a^b; // a= a^b^a a=b;
第三种做法:
仅适用于基本类型(boolean类型除外)。
用算术运算符。
a = a + b; //a=30,b=20
b = a - b; //a=30,b=10,
a = a - b; //a=20,b=10
条件运算符:
格式:
条件表达式?表达式1:表达式2;
注意:
条件表达式的结果必须为boolean类型。
执行顺序:
如果条件表达式的结果是true,就执行表达式1,
如果天健表示的结果是false,就执行表达式2。
int y = 10;
int x = y>5?'a':20;
思考:
表达式1和表达式2的数据类型必须一样吗?
不一定。只要包含隐式类型转换就可以。
推荐:一般写同样的数据类型。
Java中的流程控制语句(结构)
1、顺序结构:代码是从上往下,从左往右依次逐行来执行的。
2、选择结构:根据给定的判断或者选择语句从而来决定执行顺序.
A:判断语句
if
B:选择语句
switch-case
3、循环结构:就是重复的做某件事情。