现在的位置: 首页 > 综合 > 正文

java循环结构

2013年12月18日 ⁄ 综合 ⁄ 共 2128字 ⁄ 字号 评论关闭

 循环结构的功能是将一段代码执行多次。

 循环结构可以使用for循环、while循环和do-while循环,在JDK5.0中,新增了for-each循环,用的最多的是for循环。

       for循环:

      

       for循环的基本结构:

       for(表达式1;表达式2;表达式3){

           //循环体

       }

      

       表达式1用于初始化,在整个循环过程中只执行一次;表达式2是条件,用来判断是否继续执行循环,如果为true,则继续循环,否则结束循环;表达式3在每次循环完成之后执行,主要的作用是修改循环变量,循环多少次就会执行多少次;循环体就是要循环执行的部分。注意:表达式之间用分号隔开。

例:

for(inti=0;i<10;i++){

    System.out.print(i+“ ”);

}

i可以在外面定义,如:

inti;

for(i=0;i<10;i++){

    System.out.print(i+“ ”);

}

运行结果:0 1 2 3 4 5 6 7 8 9

分析:inti=0这段代码在循环过程中只执行一次,然后判断i是否小于10,如果小于,执行循环体,输出i的值和一个空格,然后i自增1位。当i增加到10的时候,这个时候循环的条件已不成立,程序退出该循环。

while循环:

while循环的基本结构:

while(表达式){

    //循环体

}

while循环比for循环更容易理解,当表达式的值为true时,执行循环体中的代码,为false时退出循环。

例:

inti=0;

while(i<10){

    System.out.println(i+“ ”);

    i++;

}

运行结果:0 1 2 3 4 5 6 7 8 9

do-while循环:

do-while循环的基本结构:

do{

    //循环体

}(表达式);

do-while循环和while循环差不多,都是表达式的值为true时,执行循环体中的代码,为false时退出循环,它与while循环的区别在于第一次循环的时候,while循环中的表达式为false时直接退出循环,而do-while循环则是先执行循环体,在根据表达式的值是否继续执行。

例:

inti=10;

do{

    System.out.print(i+“ ”);   
//如果用while循环,这段代码一次都不执行

    i++;

}while(i<10);

运行结果:10

for-each循环:

for-each循环是JDK5.0新加的特性,它主要用于简化数组和集合的循环遍历,集合在以后会学习,这里主要讲解如何用for-each循环遍历数组。

for-each的基本结构:

for(表达式){

    //循环体

}

 

例:

int[] a={4,2,5,1,3};     
//这里的数组可以使任意类型,如String[]char[]

for(int i:a){   
/* i的类型是由数组的类型决定的,如果上面是String数组,则要写成

                        for(String s:a)
,冒号前面的变量名由自己定义*/

   System.out.print(i+“ ”);

}

运行结果:4 2 5 1 3

分析:由结果可以知道该循环输出了数组中的内容,循环的过程是将数组中的值依次赋值给i,循环的次数由数组的长度决定。

多重循环:

各种循环可以相互嵌套使用,组成多个循环,如:

for(inti=0;i<2;i++){

    for(int j=0;j<2;j++){

        System.out.println(“i=”+i+“,j=”+j);

    }

}

运行结果:

i=0,j=0

i=0,j=1

i=1,j=0

i=1,j=1

分析:由结果可知,内循环的执行次数由外循环决定,内循环执行一次循环完毕之后,外循环才开始执行下一次循环。任何循环都可以和别的循环嵌套执行,如forwhile等。

流程跳转语句:

Java中,可以用breakcontinuereturn语句控制流程的跳转。

break

在学习switch的时候就用到过break,它的作用是终止当前循环并退出,在其他循环中同样适用。

例:

inti=0;

while(true){    //直接写入true时,如果没有退出语句,该循环会一直运行,造成死循环

    if(i>10){

        break;

    }

    System.out.print(i+“ ”);

    i++;

}

运行结果:0 1 2 3 4 5 6 7 8 9 10

continue

continue的作用和break不同,它只终止当前的一次循环,让循环从下一次开始执行。

例:打印1~10以内的奇数

for(inti=1;i<=10;i++){

    if(i%2==0){    //能被2整除的说明是偶数,不用再往下执行,直接开始下次循环

        continue;

    }

    System.out.print(i+“ ”);

}

运行结果:1 3 5 7 9

return

return的作用和break相似,也是直接终止循环并退出,只不过return除了退出循环它还直接退出该方法,由于方法是后面的知识,所以return在这里不做讲解,留到以后再进行讲解。

 

 

 

抱歉!评论已关闭.