Java循环流程控制语句

7 循环流程控制语句

7.1 for循环的格式及基本使用

7.1.1 for循环语句格式:

 for(初始化语句;判断条件语句;控制条件语句){

     循环体语句; 

 }

7.1.2 循环的执行流程图:

案例:

package com.lyc.test;

public class ForDemo01 {

    public static void main(String[] args) {
        //需求:在控制台输出10次"我好喜欢你"

        //原始写法:
        System.out.println("我好喜欢你");
        System.out.println("我好喜欢你");
        System.out.println("我好喜欢你");
        System.out.println("我好喜欢你");
        System.out.println("我好喜欢你");
        System.out.println("我好喜欢你");
        System.out.println("我好喜欢你");
        System.out.println("我好喜欢你");
        System.out.println("我好喜欢你");
        System.out.println("我好喜欢你");
        System.out.println("-----------------------");

        //用循环改进
        for (int i = 0; i < 10; i++) {
            System.out.println("我好喜欢你");
        }
    }
}

7.2 for循环练习

7.2.1 for循环实现获取指定范围数据

package com.lyc.test;

public class ForDemo02 {

    public static void main(String[] args) {
        //需求:获取数据1-5和5-1

        //原始做法
        System.out.println(1);
        System.out.println(2);
        System.out.println(3);
        System.out.println(4);
        System.out.println(5);
        System.out.println("------------------");
        //用循环改进
        for (int i = 1; i <=5; i++) {
            System.out.println(i);
        }
        System.out.println("------------------");
        for (int i = 5; 1<=i; i--) {
            System.out.println(i);
        }
    }
}

7.2.2 for循环实现1-5之间数据求和

package com.lyc.test;

public class ForDemo03 {

    public static void main(String[] args) {
        // 需求:求1-5之间数字之和

        // 定义求和变量,初始化值是0
        int sum = 0;
        // 获取1-5之间的数据,用for循环实现
        for (int i = 1; i <= 5; i++) {
            // 把每一次获取到的数据,累加起来
            /**
             * sum = sum + i;
             *
             * 第一次: sum = 0 + 1 = 1
             * 第二次: sum = 1 + 2 = 3
             * 第三次: sum = 3 + 3 = 6
             * 第四次: sum = 6 + 4 = 10
             * 第五次: sum = 10 + 5 = 15
             */
            sum += i;
        }
        //输出结果
        System.out.println("sum="+sum);
    }
}

7.2.3 for循环实现1-100之间偶数和

package com.lyc.test;

public class ForDemo04 {

    public static void main(String[] args) {
        //需求:求1-100之间的偶数和

        //定义求和变量,初始值为0
        int sum = 0;
        //获取1-100之间的数据,用for循环实现
        for(int i=1;i<=100;i++){
            if(i%2==0){//把获取到的数据进行判断,看是否是偶数
                sum += i;
            }
        }
        //输出结果
        System.out.println(sum);
    }
}

 7.2.4 for循环实控制台打印水仙花数和统计的个数

package com.lyc.test;

public class ForDemo05 {

    public static void main(String[] args) {
        // 需求:在控制台输出所有的"水仙花数"
        /**
         * 什么是水仙花数?
         * 所谓的水仙花数就是指一个三位数,其个位数字的立方和等于概述本身
         * 举例:153就是一个水仙花数
         * 153 =1*1*1 + 5*5*5 + 3*3*3
         * a:三位数其实就是告诉我们水仙花数的范围
         *      100-999
         * b:如何获取一个数据的每一个位上的数昵?
         *      如:153
         *      个位:153%10=3;
         *      十位:153/10%10=5;
         *      百位:153/10/10%10=1;
         *     千位:...
         *     万位:...
         * c:让每个位上的立方和相加,并和该数数据进行比较,如果相等
         *   则说明该数据是水仙花数,在控制台输出
         */
        //定义变量统计共有多少水仙花数,初始化值是0
        int num = 0;
        //通过循环获取到每一个三位数
        for (int i = 100; i <1000; i++) {
            int ge = i%10;//获取各位
            int shi = i/10%10;//获取十位
            int bai = i/10/10%10;//获取百位

            //让每个位上的立方和相加,并和该数数据进行比较
            if ((ge*ge*ge + shi*shi*shi + bai*bai*bai) == i) {
                System.out.println(i);//输出水仙花数
                num++;//如果是水仙花数,则统计起来
            }
        }
        System.out.println("共有"+num+"个水仙花数");//输出共有多少水仙花数
    }
}

7.3 while循环的格式及基本使用

7.3.1 while循环语句格式

 基本格式

  while(判断条件语句){

    循环语句体;

  }

 扩展格式

  while(判断条件语句){

    循环体语句;

    控制条件语句;

  }

7.3.2 执行流程图

7.3.3 案例

package com.lyc.test;

public class WhileDemo01 {

    public static void main(String[] args) {
        // for循环输出
        for (int i = 0; i < 10; i++) {
            System.out.println("hello");
        }
        System.out.println("----------------------");
        //while循环实现
        int x = 1;
        while(x<=10){
            System.out.println("hello");
            x++;
        }
    }
}

7.3.4 while循环实现1-100之间数据求和

package com.lyc.test;

public class WhileDemo02 {

    public static void main(String[] args) {
        //求1-100之和
        //for循环实现
        /*
        int sum = 0;//定义变量
        for(int i = 1;i <= 100;i++){//获取1-100之间的数据
            sum += i;//累加
        }
        System.out.println("1-100之和是:"+sum);
        */
        //while循环实现
        int sum = 0;
        int i = 1;
        while(i<=100){
            sum += i;
            i++;
        }
        System.out.println("1-100之和是:"+sum);
    }
}

7.4 do...while循环的格式及基本使用

7.4.1 do...while循环语句格式

 基本格式

  do{

    循环体语句;

  }while(判断条件语句);

 扩展格式

  do{

    循环体语句;

    控制条件语句;

  }while(判断条件语句);

 执行流程图

案例

package com.lyc.test;

public class DoWhileDemo {

    public static void main(String[] args) {
        /**
         * 执行流程
         *     1>执行初始化语句;
         *     2>执行循环体语句;
         *  3>执行控制条件语句;
         *  4>执行判断条件语句,看true还是false
         *      如果是true,继续
         *      如果是false,结束
         */

        int x = 1;
        do {
            System.out.println("我好喜欢你┭┮﹏┭┮");
            x++;
        } while (x<=10);
    }
}

三种循环的区别

  虽然可以完成同样的功能,但是还是有小区别:

  do…while循环至少会执行一次循环体。

  for循环和while循环只有在条件成立的时候才会去执行循环体

  for循环语句和while循环语句的小区别:

  使用区别:

    控制条件语句所控制的那个变量,在for循环结束后,就不能再被访问到了,而while循环结束还可以继续使用,如果你想继续使用,就用while,否则推荐使用for。原因是for循环结束,该变量就从内存中消失,能够提高内存的使用效率。

7.5 控制循环语句

7.5.1 控制跳转语句break

 Break的使用场景和作用

  break的使用场景:

   在选择结果switch语句中

   在循环语句中

  离开使用场景的存在是美哟意义的

   break的作用:跳出单层循环

案例

package com.lyc.test;

public class BreakDemo {

    public static void main(String[] args) {
        /**
         * break:中断的意思
         * 使用场景:
         *         A.switch语句中
         *         B.循环中
         * 作用:
         *         跳出循环,让循环提前结束
         */
        for(int i = 0;i < 10;i++){
            if (i==3) {
                break;
            }
            System.out.println(i);
        }
    }
}

7.5.2 控制跳转语句continue

 continue的作用:

  单层循环对比break,然后总结两个的区别

  break:退出当前循环

  continue:退出本次循环,继续下次循环

案例

package com.lyc.test;

public class ContinueDemo {

    public static void main(String[] args) {
        /**
         * continue:继续的意思
         * 使用场景:循环中
         * 作用:结束本次循环,继续下次的循环
         * 区别:break退出循环
         *        continue结束本次循环,继续下次的循环
         */
        for (int i = 0; i <10; i++) {
            if (i==3) {//如果等于3就不会输出,结束这次循环
                continue;
            }
            System.out.println(i);
        }
    }
}

 

原文地址:https://www.cnblogs.com/chao123/p/10235622.html

时间: 2024-11-07 18:26:28

Java循环流程控制语句的相关文章

Java Script 流程控制语句(if判断、switch选择和循环)

在JS中流程控制语句是相互嵌套配合使用的,以下个人见解整理仅供参考: if判断:听名字基本大概就能知道其作用,主要用于判断:下面代码示例可以更清晰的感觉到: if(判断条件){ 代码块1: } else { 代码块2: } 这是if判断的第一种写法,表示,如果判断条件为true,就执行代码块1,否则执行代码块2,后面的else就表示否则:else可以写也可以不写,不写就代表,如果判断条件为真就执行代码块1,否者什么都不用做: if(判断条件1){ 代码块1: } else  if(判断条件2)

Java基础-流程控制语句与运算符

运算符 算术运算符 ++ -- 在前时先运算后取值:在后时先取值后运算 关系运算符 == !=也可以是引用类型 位运算符 逻辑运算符 赋值运算符 条件运算符 (?:) 布尔表达式 ? 表达式1 : 表达式2 布尔表达式的值为true则返回表达式1的值 否则返回表达式2的值 instanceof 运算符 该运算符用于操作对象实例,检查该对象是否是一个特定类型(类类型或接口类型). ( Object reference variable ) instanceof (class/interface t

java se 流程控制语句 if与switch语句

流程控制语句if的用法为:第一种形式:if(布尔表达式){//待执行的代码}第二种形式:if(布尔表达式){//待执行的代码}else{//待执行的代码}第三种形式:if(布尔表达式){//待执行的代码}else if(布尔表达式){//待执行的代码}else if(布尔表达式){//待执行的代码}else{//待执行的代码} public class IfTest{ public static void main(String[] args) { int a = 3; int b = 2; i

Java之流程控制语句

一.Java条件语句(if...else)    ifelse语法:                                              多重if语法:                             嵌套if语法: if(条件1){                                             if(条件1){                            if(条件1){ 代码块1:                       

9.1、Java 循环的控制语句

循环的控制语句 循环的控制语句有两种:break.continue 两种. braak可以用于强制限出循环. continue可以用于强制结束本次循环. break braak可以用于强制限出循环. //break的用法,满足条件时,结束所有循环 for (int i = 1; i <= 9; i++) { if (i == 3) { //当i等于3的时候,调用break语句 break; } System.out.println("i = " + i); } /** * 结果为

JAVA基础-流程控制语句注意事项

1:switch语句(掌握) (1)格式: switch(表达式) { case 值1: 语句体1; break; case 值2: 语句体2; break; ... default: 语句体n+1; break; } 格式解释说明: switch:说明这是switch语句. 表达式:可以是byte,short,int,char JDK5以后可以是枚举 JDK7以后可以是字符串 case:后面的值就是要和表达式进行比较的值 break:表示程序到这里中断,跳出switch语句 default:如

第2章循环流程控制语句

2.1for循环的格式及基本使用2.1.1for循环语句格式:for(初始化语句;判断条件语句;控制条件语句) {循环体语句; / /让循环体代码执行多次;}2.1.2执行流程A:执行初始化语句B:执行判断条件语句,看其结果是true还是false如果是false,循环结束.如果是true,继续执行.C:执行循环体语句D:执行控制条件语句E:回到B继续2.1.3for循环的执行流程图2.1.4代码案例八 package com.itheima_04; /* * for循环语句格式: * for(

Java学习笔记—第六章 流程控制语句

第六章  熟悉Java的流程控制语句 Java的程序流程控制分为顺序结构.选择结构.循环结构和跳转语句. 顺序结构:按照程序代码自上而下执行,直到程序结束,中间没有任何判断和跳转. 选择结构(分支结构):判断给定的条件,根据判断结果控制程序的流程.包括if语句和switch语句. 2.1 if语句:通过判断给定表达式的值来决定程序的流程.常见if语句的形式有三种: (1)if(expression){ statement: } (2)if(expression){ statement; }els

JAVA学习(四):Java流程控制语句(顺序结构、if条件语句、switch条件语句、循环语句与跳转语句)

Java流程控制语句 本博文将对JAVA中组成各种结构的控制语句进行重点介绍,主要内容是区别于C/C++中的流程控制语句的重点解析. 1.顺序语句 顺序结构中的语句可分为:表达式语句.空语句和复合语句三大类. 注: (1).空语句主要用来作为空循环体,其语法格式如下: : //其实就是一个分号 执行一个空语句,就是将控制转到该语句的结束点.这样,如果空语句是可以到达的,则空语句的结束点也是可以到达的. (2).复合语句又称为语句块,若语句块是空的,则控制转到语句块的结束点. 2.if条件语句 J