逻辑操作符:&&、||、!

  逻辑操作只可以应用于布尔值,注意逻辑操作的”短路”情况

  test(1) && test(2) && test(3) //顺序判断,只要前面有一个test为假后面的判断不需要执行了

  test(1) || test(2) || test(3)  //顺序判断,只要前面有一个test为真后面的判断不需要执行了

  按位操作符:位与(&)、位或(|)、位非(~)、

  有符号位左移(<<):低位补0

  有符号位右移(>>):若符号为正则高位补0,若符号为负则高位补1

  无符号位左移(<<<):无论正负低位全部补0

  无符号位右移(>>>):无论正负高位全部补0

  如果对char、byte、short类型数值进行移位处理,那么在移位之前它们都将先被转换为int类型,

  并且得到的结果也是int类型,且移位后的数值结果只有低5位才有用(int类型为2的5次方)

三元操作符:

  boolean-exp ? value0 : value1

  如果布尔表达式boolean-exp为true则计算value0,否则计算value1

  控制执行流程

  关键字:Java控制执行流程主要涉及的关键字if-else、while、do-while、for、return、break、continue

  Java并不支持goto?句,但是在java中仍然保留了goto

  条件判断:所有条件判断都利用条件表达式的真或假来决定执行流程

  注意:java不允许将一个数字等非boolean值作为布尔值使用,如果要在布尔测试中使用一个非布尔值则首先必须用一个条件表达式将其转换成布尔值。

  Ex:a是非boolean类型值 if(a)×à  if(a!=0) √

  while:先判断条件表达在执行循环体,条件为false则一次都不执行

  do-while:先执行循环体,再判断条件表达式,因此至少会执行一次

  for语句:for(int  i = 1, j = 5;i < 5;i++,j = i+2)

  for语句初始化部分实际上可以定义任意数量的变量,注意:但是这些变量都必须是同一种数据类型

  for语句中可以使用一系列有逗号表达式分隔的语句

  增强行的for循环:for(char c : “hello world”.toCharArray())

  如果for循环有索引或是步进,则上述增强行的for循环不能够直接满足需求

  Think in java 建议自写一个range()方法配合增强型的for循环

import static net.mindview.util.range.* //此包需从www.mindview.com上下载
Ex:for(int i : range(10))     //range(10)返回数组,元素为0..9
for(int i : range(5,10))    //range(5,10)返回数组,元素为5..9
for(int i : range(5,10,3))  //range(5,10,3)返回数组,元素为5..10 step 3
while(true) = for(;;)
switch .. case...break语句:
switch(integral-selector)  //integral-selector:选择因子必需是int或是char那样的整数值
case integral-value1:statement:break;
//
Default:statement;
  单一case satatement后面需有break,避免case穿透到下一case statement

  return:指定一个方法的返回值,并退出该方法。

  如果一个方法声明有非void的返回值,那么必须确保每一条代码路径都将返回一个值

  break:终止当前循环体

  continue:停止循环体的当前迭代,然后退回循环起始处,开始下一次迭代

  goto:虽然java不再使用goto语句,但是依然保留了goto作为关键字

  在java中如果想实现goto一样跳转语句的功能可以使用标签编程