JAVA编程思想第四篇の控制执行流程

       就像有直觉的生物一样,程序必须在执行过程中控制他的世界,并做出选择。在java中你要使用执行控制语句来做出选择。

     在java中,涉及的关键字包括if-else,while,do-while,for,return,break以及选择语言switch。java并不支持goto语句,但是仍然可以进行类似goto那样的跳转,比起典型的goto,有了很多限制。

1.true和false

      所有条件语句都利用条件表达式的真或假来决定执行流程。注意:Java不允许我们将一个数字作为布尔值使用,虽然这在C和C++里是允许的。(与C和C++区别)

    如果使用数字作为判断条件会报:Type mismatch: cannot convert from int to boolean

2.if-else

基本形式:

if(boolean-expression)

     statement

if(boolean-expression)

    statement

else

    statement

3.迭代

      while、do-while和for用来控制循环。有时将它们划分为迭代语句。

      while循环的格式:

      while(boolean-expression)

           statement

 

     do-while的格式:

     do

          statement

     while(boolean-expression)

 

     while 和do-while唯一的区别就是do-while中的语句至少会执行一次,即便表达式第一次就被计算为false。

 

        for格式:

      for(init;boolean-expression;step)

           statement

4.Foreach语法

     java SE5引入了一种新的更加简洁的for语法用于数组和容器,即foreach语法。

public class ForEach{
     public static void main(String[] args){
     Random rand=new Random(47);
     float f[]=new float[10];
     for(int i=0;i<10;i++)
          f[i]=rand.nextFloat();
     foreach(float x:f)
          System.out.println(x);
	}
}

      注意:在foreach循环的时候,集合里面的值是不能改变的,否则会报错。

5.return

       return关键词有两方面用途:一方面指定一个方法返回什么值,另一方面它会导致当前方法退出,并返回那个值。

     如果在返回void的方法中没有return语句,那么在该方法的结尾处会有一个隐式的return。

6.break和continue

      break用于强行退出循环,不执行循环中剩余的语句。而continue则停止执行当前的迭代,然后退回循环起始处,开始下一次的迭代。


7.臭名昭著的goto

       尽管goto仍是java中的一个保留字,但是在语言中并未使用它;java没有goto。但是java也可以实现一些类似的跳转,这与break和continue有关。

      

label1:
outer-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处,但是并不重新进入迭代,也就是说完全中止了2个迭代。

8.switch

switch格式:

switch(integral-selector){

      case integral-value1:statement;break;

      case integral-value2:statement;break;

      //.....

     default:statement;

}

其中integral-selector(整数选择因子),必须是一个int或者char那样的整数值
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值