栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

流程控制语句

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

流程控制语句

1.1流程控制语句
  • if语句的第一种格式:
if语句的第一种格式:	
	if(布尔表达式){
        语句体;
    }
	其它语句;
  • if语句的第二种格式:
if(布尔表达式){
        语句体1;
    } else {
        语句体2;
    }

  • 练习
import java.util.Scanner;

public class Test01 {
    public static void main(String[] args) {
        
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入第一个整数数字");
        int a = scanner.nextInt();
        System.out.println("请输入第二个整数数字");
        int b = scanner.nextInt();
        System.out.println("请输入第三个整数数字");
        int c = scanner.nextInt();
        int max = 0;
        //方式一: 使用三元运算符
        //int temp = (a > b) ? a : b;
        //int max = (temp > c) ? temp : c;

        //方式二: 使用两个if-else
        
        //方式三: 假设a是最大的
        
        //方式四: a,b,c的最大值要么是a,要么是b,要么是c
        //int max;
        //if (a >= b && a >= c) {
        //    max = a;
        //} else if (b >= a && b >= c) {
        //    max = b;
        //} else {
        //    max = c;
        //}
        if (a > b) {
            if (a > c) {
                max = a;
            } else {
                max = c ;
            }
        } else {
            if (b > c) {
                max = b ;
            }else {
                max = c ;
            }
        }
        System.out.println("三个数中最大的数是:"+max);
    }
}

  • if语句的第三种格式:
1.if(布尔表达式1){
        语句体1;
    } else if(布尔表达式2){
    	语句体2;
    }
	...
    else if(布尔表达式n){
    	语句体n;
    } else {
        语句体n+1;
    }
	其它语句;
2.执行流程:
	(1) 首先计算布尔表达式1的值,判断其结果是true还是false
	(2) 如果是true就执行语句体1
	(3) 如果是false就继续计算布尔表达式2,判断其结果是true还是false
	(4) 如果是true就执行语句体2
	(5) 如果是false就继续计算布尔表达式…,判断其结果是true还是false
	(6) …
	(7) 如果没有任何布尔表达式为true,就执行语句体n+1	
  • 练习
public class Demo03IfElseIfWeek {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入代表星期的整数数字(1-7)");
        int week = scanner.nextInt();
        if (week < 1 || week > 7) {
            System.out.println("非法数字");
        }else if (week == 1){
            System.out.println("星期一");
        } else if (week == 2) {
            System.out.println("星期二");
        } else if (week == 3) {
            System.out.println("星期三");
        } else if (week == 4) {
            System.out.println("星期四");
        } else if (week == 5) {
            System.out.println("星期五");
        } else if (week == 6) {
            System.out.println("星期六");
        }else {
            System.out.println("星期天");
        }

        1.创建键盘录入Scanner类的对象
        //Scanner sc = new Scanner(System.in);
        2.获取键盘录入的代表星期数的整数数字,保存int变量week中
        //System.out.println("请输入代表星期数的整数数字(1到7之间):");
        //int week = sc.nextInt();
        3.因为week中的数字有7+1种情况,使用if语句第三种格式对week中数字进行判断,并输出对应的星期数
        //if (week == 1) {
        //    System.out.println("星期一");
        //} else if (week == 2) {
        //    System.out.println("星期二");
        //} else if (week == 3) {
        //    System.out.println("星期三");
        //} else if (week == 4) {
        //    System.out.println("星期四");
        //} else if (week == 5) {
        //    System.out.println("星期五");
        //} else if (week == 6) {
        //    System.out.println("星期六");
        //} else if (week == 7) {
        //    System.out.println("星期日");
        //} else  {//隐含条件: week<1 || week>7
        //    System.out.println("您输入的星期数不存在,火星来的吧,哥屋恩...");
        //}
        //System.out.println("game...over...");
    }
}

  • for循环语句介绍
1.for循环格式:	
	for (初始化表达式1;布尔表达式2;步进表达式4) {
        循环体3;
    }
	其它语句;

2.执行流程:
	1,2(循环条件:true),3,4 --> 2(循环条件:true),3,4 --> 
        ... --> 直到2(循环条件:false)为false时,结束for循环,执行后面的其它语句
  • for循环的练习
public class Demo08ShuiXianHua {
    public static void main(String[] args) {
        //需求:
        //在控制台输出所有的“水仙花数”
        //
        //解释:什么是水仙花数?
        //水仙花数,指的是一个三位数,个位、十位、百位的数字立方和等于原数
        //例如 153 3*3*3 + 5*5*5 + 1*1*1 = 27 + 125 + 1 = 153
        int count = 0 ;
        for (int num = 100; num <= 999; num++) {
            int ge = num % 10;
            int shi = num / 10 % 10;
            int bai = num / 100 % 10;
            int he = ge*ge*ge+shi*shi*shi+bai*bai*bai;
            if (he == num) {
                count++ ;
                System.out.println("水仙花数有 :" + num);
            }
        }
        System.out.println("水仙花数一共有 " +count + "个");
    }
}
  • while循环语句
1.while循环格式:
	初始化表达式1;
	while(布尔表达式2){
        循环体3;
        步进表达式4;
    }
	其它语句;

2.执行流程:		
	1,2(循环条件:true),3,4-->2(循环条件:true),3,4--> 
        ... -->直到布尔表达式2(循环条件: false)的结果为false,
		结束while循环,执行后面的其它语句
  • 练习
需求:
    世界最高山峰是珠穆朗玛峰(8844.43米=8844430毫米),假如我有一张足够大的纸,它的厚度是0.1毫米。
	请问,我折叠多少次,可以折成珠穆朗玛峰的高度?
    折纸(折叠后的厚度是原有厚度的2倍,而不是平方的关系):
    
    public class Demo07ZhuMuLangMF {
    public static void main(String[] args) {
        int zf = 8844430 ;
        double paper = 0.1 ;
        int count = 0 ;
        while (paper < zf){
            paper*= 2 ;
            count++;
        }
        System.out.println(count);
    }
}

  • do-while循环语句介绍
1.do-while循环格式:
	初始化表达式1;
	do {
        循环体3;
        步进表达式4;
    } while (布尔表达式2);
	其它语句;

2.执行流程:
	1,3,4 --> 2(循环条件:true),3,4 --> 2(循环条件:true),3,4 --> 
        直到布尔表达式2(循环条件:false)的结果为false,结束do-while循环,执行后面的其它语句
  • 三个循环语句之间的区别
在知道循环次数的时候使用for循环,在不知道循环次数的时候使用while循环和do-while循环
do-while循环至少执行一次
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/354220.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号