Java从零开始学八(循环结构)

一、循环结构

循环结构则是根据判断条件的成立与否,决定程序段落的执行次数,而这个程序段落就称为循环主体。

二、While循环

while是循环语句,也是条件判断语句。当事先不知道循环该执行多少次的时,就要用到while循环。while循环的格式如下:

while (循环条件判断){

语句1 ;

语句2 ;

语句n ;

循环条件更改 ;

}

示例一、使用While进行100以内累加操作

package loop;

public class test1 {

    public static void main(String[] args) {
        // 使用While进行100以内累加操作
        int sum=0;    //定义变量保存累加的值
        int i=1;      //定义整型变量i
        while(i<=100){
            sum+=i;
            i++;
        }
   System.out.println("100以内整数之和: "+sum);
    }

}

结果:100以内整数之和: 5050

While是先判断条件是否成立,如果成立则进入循环,不成立则跳过循环

示例二、同上i的值变为101

package loop;

public class test {

    public static void main(String[] args) {
        // 使用While进行100以内累加操作
                int sum=0;    //定义变量保存累加的值
                int i=101;      //定义整型变量i
                while(i<=100){
                    sum+=i;
                    i++;
                }
           System.out.println("100以内整数之和: "+sum);

    }

}

结果:100以内整数之和: 0

三、do-while循环

do…while循环也是用于未知循环执行次数的时候,而while循环及do…while循环最大不同就是进入while循环前,while语句会先测试判断条件的真假,再决定是否执行循环主体,而do…while循环则是“先做再说”,每次都是先执行一次循环主体,然后再测试判断条件的真假,所以无论循环成立的条件是什么,使用do…while循环时,至少都会执行一次循环主体,语句格式:

do{

语句1 ;

语句2 ;

….

语句n ;

循环条件改变 ;

}while (循环条件判断);

示例三、使用do-While进行100以内累加操作

package loop;

public class test {

    public static void main(String[] args) {
        // 使用While进行100以内累加操作
                int sum=0;    //定义变量保存累加的值
                int i=1;      //定义整型变量i
                do{
                    sum+=i;
                    i++;
                }while(i<=100);
           System.out.println("100以内整数之和: "+sum);

    }

}

结果:100以内整数之和: 5050

四、for循环

对于while和do…while两种循环来讲,操作时并不一定非要明确的知道循环的次数,而如果开发者已经明确的知道了循环次数的话,那么就可以使用另外一种循环语句——for循环。 格式如下:

for (赋值初值;判断条件;赋值增减量){

语句1 ;

….

语句n ;

}

示例四、使用for进行100以内累加操作

package loop;

public class test2 {

    public static void main(String[] args) {
        // 使用for进行100以内累加操作
        int sum=0;    //定义变量保存累加的值
     for(int i=1; i<=100;i++){
         sum=sum+i;
     }
     System.out.println("100以内整数之和: "+sum);

    }

}

结果:100以内整数之和: 5050

4.1循环嵌套

示例五、for循环打印99乘法表

package loop;

public class test3 {

    public static void main(String[] args) {
        // 使用for循环打印99乘法表
        for(int i=1;i<=9;i++){

            for(int j=1;j<=i;j++){
                System.out.print(j+"*"+i+"="+(j*i)+"\t");
            }
            System.out.println();
        }

    }

}

结果:

1*1=1
1*2=2    2*2=4
1*3=3    2*3=6    3*3=9
1*4=4    2*4=8    3*4=12    4*4=16
1*5=5    2*5=10    3*5=15    4*5=20    5*5=25
1*6=6    2*6=12    3*6=18    4*6=24    5*6=30    6*6=36
1*7=7    2*7=14    3*7=21    4*7=28    5*7=35    6*7=42    7*7=49
1*8=8    2*8=16    3*8=24    4*8=32    5*8=40    6*8=48    7*8=56    8*8=64
1*9=9    2*9=18    3*9=27    4*9=36    5*9=45    6*9=54    7*9=63    8*9=72    9*9=81    

五、break语句

break语句可以强迫程序中断循环,当程序执行到break语句时,即会离开循环,继续执行循环外的下一个语句,如果break语句出现在嵌套循环中的内层循环,则break 语句只会跳出当前层的循环。以下图的for循环为例,在循环主体中有break语句时,当程序执行到break,即会离开循环主体,而继续执行循环外层的语句。

示例六、实现输出1-10,遇到4时使用break;

package loop;

public class test4 {

    public static void main(String[] args) {
        // 实现输出1-10,遇到4时程序退出
        for(int i=1;i<=10;i++){
            if (i==4){
                break;
            }
            System.out.print(i+" ");
        }
       System.out.println("循环结束");
    }

}

结果:1 2 3 循环结束

六、continue语句

continue语句可以强迫程序跳到循环的起始处,当程序运行到continue语句时,即会停止运行剩余的循环主体,而是回到循环的开始处继续运行。以下图的for循环为例,在循环主体中有continue语句,当程序执行到continue,即会回到循环的起点,继续执行循环主体的部分语句。

continue是跳过当前循环进入下次循环

示例七、同上实现输出1-10,遇到4时使用continue;

package loop;

public class test4 {

    public static void main(String[] args) {
        // 实现输出1-10,遇到4时使用continue
        for(int i=1;i<=10;i++){
            if (i==4){
                continue;
            }
            System.out.print(i+" ");
        }
       System.out.println("循环结束");
    }

}

结果:1 2 3 5 6 7 8 9 10 循环结束

七、return语句

结束当前方法的执行并退出,返回调用该方法的语句处。

示例入、同上实现输出1-10,遇到4时使用return;

package loop;

public class test4 {

    public static void main(String[] args) {
        // 实现输出1-10,遇到4时使用return
        for(int i=1;i<=10;i++){
            if (i==4){
                return;
            }
            System.out.print(i+" ");
        }
       System.out.println("循环结束");
    }

}

结果:1 2 3

可以看到“循环结束”没有输出,当i=4时,满足执行return,结束整个方法的执行

时间: 2024-10-08 09:45:12

Java从零开始学八(循环结构)的相关文章

Java从零开始学六(选择结构)

一. 程序的结构: 一般来说程序的结构包含有下面三种: 1.顺序结构 2.选择结构 3.循环结构 二.顺序结构 程序至上而下逐行执行,一条语句执行完之后继续执行下一条语句,一直到程序的末尾 三.选择结构 选择结构是根据条件的成立与否,再决定要执行哪些语句的一种结构 3.1 .IF语句--单分支结构 if (判断条件){ 语句1 : … 语句2 : } 示例一. 比较2个整型变量的大小 package pb.test; public class test4 { public static void

【5】Java流程控制之循环结构

一.流程控制概述 三大流程控制语句:顺序.选择.循环 1)顺序:从上往下依次执行 2)选择:if ,if-else,多重 if结构,嵌套if,switch,根据条件执行对应的内容 3)循环结构: -while循环 -do-while循环 -for循环 -break语句 -continue语句 二.while循环 1)如果循环体只有一条语句,大括号可以省略 2)为避免死循环,小括号后面不要加分号 ,否则只执行分号前面的内容 3)n必须先进行初始化:例如 int n=1 4)循环变量n的值必须被改变

第二节 java流程控制(循环结构)

?1.for循环 for(初始化表达式;循环条件表达式;循环后的操作表达式){ 执行语句 } 2.while循环 while(条件表达式){ 执行语句 } while循环特点是只有条件满足才会执行我们的循环体 3.do while循环 do{ 执行语句 }while(条件表达式) do while的特点是条件无论是否成立循环体至少都会被执行一次 例子:9*9乘法表 关键字 1.break(跳出) 1.break用在循环中,用来跳出当前循环执行下一个循环. 2.break用在switch里面的时候

小白的java学习之路 “ 循环结构(二)”

一.for 循环 语法: for(表达式一;表达式二;表达式三){ 循环操作 } 表达式一:参数初始化 表达式二:条件判断 表达式三:更新循环变量 执行流程: 步骤一:执行表达式一.初始化参数 步骤二:执行表达式二进行循环条件的判断 步骤三:如果循环条件为true则执行循环操作,如果为false则退出循环执行以下代码 步骤四:当循环操作执行完毕后执行表达式三,更新循环变量 表达式三执行完毕后继续执行表达式二进行循环判断,如果为真则执行循环操作,如果为假则执行以下代码,以此类推..........

Java从零开始学二十八(Math类和Random类)

一.Math概述 提供了常用的数学运算方法和两个静态常量E(自然对数的底数)和PI(圆周率) 二.常用方法 package com.pb.demo1; public class MathTest { public static void main(String[] args) { System.out.println("求平方根:" + Math.sqrt(9.0)); System.out.println("求两数的最大值:" + Math.max(10,30))

Java从零开始学三十八(JAVA IO- 重定向IO)

一.三个静态变量 java.lang.System提供了三个静态变量 System.in(默认键盘) System.out(默认显示器) System.err 二.重写向方法 System提供了三个重定向方法 方法 说明 static void setErr(PrintStream errr) 重定向标准错误输出流 static void setIn(InputStream in ) 重定向标准输入流 static void setOut(PrintStream out) 重定向歀输出流 三.例

Java从零开始学十八(抽象类和接口)

一.什么是抽象类和接口 抽象类.接口与类是一个层次的概念,是java中极其重要的概念. 抽象类是从多个类中抽象出来的公共模板,提供子类均具有的功能. 接口是从多个类中抽象出来的规范,体现的是规范和实现分离的原则,同时也有效的解决了java单重继承的缺陷 二.抽象类 2.1.抽象类与普通类的区别 抽象类的class前面有abstract关键字,而普通类没有 /* * 抽象类 */ public abstract class Person1 {} /* * 普通类 */ public class P

【Java】Java_16 控制循环结构Break、Continue、Return

1.break break用于完全结束一个循环,跳出循环体.不管是哪种循环,一旦在循环体中遇到break,系统将完全结束该循环 在Java中是的标签定义,标签就是一个紧跟着英文冒号(:)的标识符 代码示意: package com.oliver.test; public class TestBreak { public static void main(String[] args) { //外层循环,outside作为标识符 outside: for(int i=0;i<=5;i++){ //内

Java从零开始学二十一(集合List接口)

一.List接口 List是Collection的子接口,里面可以保存各个重复的内容,此接口的定义如下: public interface List<E> extends Collection<E> 二.List接口的扩展方法 No. 方法 类型 描述 1 public void add(int index, E element) 普通 在指定位置增加元素 2 public boolean addAll(int index, Collection<? extends E>