划词......
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

java初学者实践教程6--程序流程控制

Posted on 2008-09-16 08:35  王君  阅读(417)  评论(0编辑  收藏  举报

    这节课我们又要讲语法了,这是“百家拳软件项目研究室”这部教程的第6节课,我们这个教程侧重的是实践的内容和语言的重点。在java语言中还有很多细节的东西,请参考sun公司的官方培训教程。我们这里不能一一讲述。这节课我们来给大家提供一些程序流程控制的一些例子供大家学习。计算机怎么做事情,是我们教给他的。我们用它解决实际生活中的问题,所以计算机要描述现实生活中的流程。

    Java语言中提供了4类程序控制语句,来描述流程:

    1.循环语句:while,do-while,for

    2.分支语句:if-else,switch,

    3.跳转语句 break,continue,label: 和return

    4.异常处理语句:try-catch-finally,throw

    实践:

    1.循环语句

    while 语句

    class While {
        public static void main(String args[]) {
            int n = 10;
            while(n > 0) {
                System.out.println("tick " + n);
                n--;
            }
        }
    }

    do…while 语句

    class DoWhile {
        public static void main(String args[]) {
            int n = 10;
            do {
                System.out.println("tick " + n);
                n--;
            } while(n > 0);
        }
    }

    二者区别,do…while至少循环一次,而while的表达式要是为flase的话可以一次也不循环。再通俗一点,do…while就算是括号里的是flase,人家最少也能do一次。

    for语句

    class ForTick {
        public static void main(String args[]) {
            int n;
            for(n=10; n>0; n--)
                System.out.println("tick " + n);
            }
    }

    与上面那两个的区别,for循环执行的次数是可以在执行之前确定的。通俗一点说吧,看这个例子 for(n=10; n>0; n--)就是在括号里的时候,就已经知道要循环10次了。

    还有啊,for循环的部分可以为空的

    class ForVar {
        public static void main(String args[]) {
            int i;
            boolean done = false;
            i = 0;
            for( ; !done; ) {
                System.out.println("i is " + i);
                if(i == 10) done = true;
                i++;
            }
        }
    }

   下载 href="http://java.chinaitlab.com/download/07070418157115.rar" target=_blank>循环语句的例子下载

    2.分支语句

    if/else语句

    class IfElse {
        public static void main(String args[]) {
            int month = 4; // April
            String season;
            if(month == 12 || month == 1 || month == 2)
                season = "Winter";
            else if(month == 3 || month == 4 || month == 5)
                season = "Spring";
            else if(month == 6 || month == 7 || month == 8)
                season = "Summer";
            else if(month == 9 || month == 10 || month == 11)
                season = "Autumn";
            else
                season = "Bogus Month";
            System.out.println("April is in the " + season + ".");
        }
    }

    //这段程序输出:

    //April is in the Spring.

    // 注意 “||”是或运算 

    switch语句

    class Switch {
        public static void main(String args[]) {
            int month = 4;
            String season;
        switch (month) {
        case 12:
        case 1:
        case 2:
            season = "Winter";
            break;
        case 3:
        case 4:
        case 5:
            season = "Spring";
            break;
        case 6:
        case 7:
        case 8:
            season = "Summer";
            break;
        case 9:
        case 10:
        case 11:
            season = "Autumn";
        break;
    default:
            season = "Bogus Month";
        }
    System.out.println("April is in the " + season + ".");
        }
    }

  下载 href="http://java.chinaitlab.com/download/07070418161030.rar" target=_blank>分支语句代码下载

    switch语句适合于条件非常多的逻辑

    请看上述语句可以混合使用,请看下载例子