thinking in java笔记 4 控制执行流程

  • 逻辑
         java不允许将一个数字作为布尔值使用。
  • 迭代
      while do-while的唯一区别是do-while中的语句至少会执行一次。
      for(;;)三个部分都可以为空,等同于while(true),java中唯一用到逗号操作符的就是for循环的控制表达式。
      任何返回一个数组的方法都可以使用foreach,foreach还可用于任何Iterable对象。
      语法为int f[]=new int[10]; .......    for(int i:f)
  • 跳转
      在任何迭代语句的主体部分,都可用break和continue控制循环的流程。可搭配标签使用实现goto的效果。
     label1:
        out-iteration{
                  inner-iteration{
                        //...
                        break;      //(1)
                        //...
                        continue; //(2)
                        //...
                        continue label1; //(3)
                        //...
                        break label1; //(4)
                  }
            }
      (1)break中断内部迭代,回到外部迭代
      (2)continue使执行点回到内部迭代的起始处
      (3)continue label1同时中断内部迭代及外部迭代,转到label1处,接着从外部迭代继续。
      (4)break label1也会中断所有迭代,并回到label1处,但并不重新进行迭代。
    java里使用标签的唯一理由是因为有循环嵌套存在,而且想从多层嵌套中break或continue。
  • switch
     根据整数表达式的值,选择一段代码去执行。switch语句实现多路选择,但它要求使用一个选择因子,并且必须是int和char那样的整数值,对于非整数类型,必须使用一系列if语句 。但也可以使用enum和switch一起来实现这种情况。case语句能够堆叠在一起,为一段代码形成多重匹配,即只要符合多种条件中的一种,就执行那段特别的代码。

posted @ 2011-10-09 17:13  因是因非  阅读(194)  评论(0编辑  收藏  举报