一、Java运算符总结

1.算术运算符:

①单目:+(取正),-(取负), ++(自增1), - -(自减1);

②双目:+ - * / %(取余)(+还可以连接字符串);

③三目:a>b?true:false

说明:当a大于b的时候,为true(也就是冒号之前的值),否则为false;这整个运算符包括一个关系运算符(可以是“>”"<""!="等等),一个“?”,一个“:”,冒号前后需要有两个表达式或者是值或者是对象。

2.位运算符:(先转化成二进制再进行运算)

①与(&)、非(~)、或(|)、异或(^);

②移位运算符:<<(有符号左移)、>>(有符号右移)、 >>>(无符号右移);

③左移1位相当于乘以2,右移1位相当于除以2,比乘除运算效率更高。

3.比较运算符:== 、<、>、<=、>=、!=

①==与!=比较基本数据类型是比较值,比较引用类型是虚地址;

②除了== 和 !=外,都只能比较基本数据类型。

4.逻辑运算符:用于连接两个boolean类型的表达式。

&& (双与) 、|| (双或) 、&(与)、|(或)、^(异或)、!(非运算)

注意:①&&与&的运算结果是相同的,对于&而言无论左边为什么值,右边都参与运算;对于&&来说,只要左边为false右边就不再运算,直接返回false。

②||与|的运算结果是相同的,对于|而言无论左边为什么值,右边都参与运算;对于||来说,只要左边为true右边就不再运算,直接返回true。

③&&和||可以理解为物理上的短路,实际中多用&&及||。

二、Java流程控制总结

1.分支语句:

①条件语句 — if
条件语句 — if…else…
条件语句 — if…else if…
②条件语句 — switch-case
表达式)
{
case 取值1:语句块1
…
case 取值n:语句块n
default: 语句块n+1
}

说明:①表达式的值只可以接受int、byte、char、short 型、枚举,JDK1.6以后String也可以,不接受其他类型的值,不允许有重复的case取值。

②switch一旦碰到第一次case匹配,程序就会跳转到这个标签位置,开始顺序执行以后所有的程序代码,而不管后面的case条件是否匹配,直到碰到break语句为止。

2.循环语句:

①循环语句 — while
while (条件表达式)
{
执行语句块;
}
②循环语句 — do…while(至少会执行一次循环)
do
{
执行语句块;
} while(条件表达式 );
③循环语句 — for
for(初始化表达式;循环条件表达式;循环后的操作表达式)
{
执行语句块
}

3.循环的中断语句— break 、continue

在使用循环语句时,只有循环条件表达式的值为false时,才能结束循环。有时,我们想提前中断循环,要实现这一点,只需要在循环语句块中添加break或continue语句。
①中断语句 — break
break语句用于终止某个语句块的执行。用在循环语句体中,可以强行退出循环。
“break;”语句:可以出现在while、do…while、for、switch语句体中。
“break label”语句 :可以出现在任何语句体中。多数还是使用在循环中。
②中断语句 — continue
语句用在循环语句体中,用于终止某次循环过程,跳过循环体中continue语句下未执行的循环,开始下一次循环过程。
“continue;” 语句:只能出现在循环语句while、do…while、for中。