疯狂Java程序员16堂课---第6课流程控制的陷阱读书笔记:

来源:互联网 发布:域名检测 编辑:程序博客网 时间:2024/06/05 02:18

第6课流程控制的陷阱读书笔记:

1、 switch语句允许的表达式:

()里只能是如下5种数据类型:byte,short,int,char,enum

 绝对不能是String,long,float,double等其他基本类型。

package com.trap;public class SwitchTest {    public static void main(String[] args) {int a=5;switch((int)(a+1.2+0.8)){case 6:System.out.println("6");break;case 7:System.out.println("7");break;case 8:System.out.println("8");break;default:System.out.println("default");}}}
package com.trap;enum Season{SPRING,SUMMER,FALL,WINTER}public class EnumSwitch{public static void main(String[] args) {Season s = Season.FALL;switch (s){case SPRING://不可加Seanson.SPRING限定System.out.println("春天不是读书天");break;case SUMMER:System.out.println("夏日炎炎正好眠");break;case FALL:System.out.println("秋多蚊蝇");break;case WINTER:System.out.println("冬日冷");break;}}}

2、 if语句中的else的隐含条件:就是不满足else之前的条件

3、 尽量不省略循环体的花括号

Java语言规定,for,while,do循环中重复执行的语句不能是一条单独的局部变量定义语句。

4、 For循环

1、小心for();….

2、掌握循环执行次数要看整个循环过程(过程中改变)

3、浮点数作循环计数器

情况1:无限循环

package com.trap;public class FloatCount{public static void main(String[] args) {final int START = 999999999;//尝试循环50次,结果无限循环,因为i的值一直是:1.0E9  而START+50 是1.000006E9for (float i = START ; i < START + 50  ; i ++){System.out.println("i的值:" + i + new java.util.Date());}}}
原因:

package com.trap;public class FloatTest{public static void main(String[] args) {final float f1 = 999999999;System.out.println(f1);System.out.println(f1 + 1);System.out.println(f1 == f1 + 1);   //true}}

情况2:不执行

package com.trap;public class FloatCount2{public static void main(String[] args) {final int START = 999999999;//尝试循环20次for (float i = START ; i < START + 20  ; i ++){System.out.println("i的值:" + i + new java.util.Date());}}}
原因:

package com.trap;public class FloatTest2{public static void main(String[] args) {final float f1 = 999999999;System.out.println(f1);System.out.println(f1 + 20);//下面语句输出trueSystem.out.println(f1 == f1 + 20);System.out.println(f1 + 50);//下面语句输出falseSystem.out.println(f1 == f1 + 50);}}

4、foreach作循环计数器

   循环过程中改变循环变量没有意义,不会改变集合本身

 

 

0 0
原创粉丝点击