控制流语句:条件语句、循环语句和跳转语句

目录

1. 条件语句

1.1 if-else语句

1.2 switch语句

2. 循环语句

2.1 for循环

2.2 while循环

2.3 do-while循环

3. 跳转语句

3.1 break语句

3.2 continue语句

3.3 return语句

4. Switch语句和If-else语句用法上的小区别:

4.1 Switch语句

4.2 If-else语句

4.3 如何选择


1. 条件语句

条件语句用于根据不同的条件来执行不同的代码块。

1.1 if-else语句

if-else语句根据条件的真假来执行不同的代码块。如果条件为真,则执行if语句块;否则,执行else语句块。 

        //键盘录入两个数据
        Scanner sc = new Scanner(System.in);
        //键盘录入第一个数据
        System.out.println("请输入第一个数据:");
        int a = sc.nextInt();
        //键盘录入第二个数据
        System.out.println("请输入第二个数据:");
        int b = sc.nextInt();
        if (a>b){
            System.out.println("a和b中,a最大,a="+a);
        }else{
            System.out.println("a和b中,b最大,b="+b);
        }

1.2 switch语句

switch语句根据不同的表达式值执行不同的代码块。可以使用多个case标签来匹配不同的值,并执行相应的代码块。如果没有匹配到任何case,则执行默认的代码块。

package com.edu.qiku.day05.exercise;

import java.util.Scanner;

/**
 * 根据输入的星期数执行相应的锻炼活动
 */
public class LoseWeight {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        System.out.println("请输入一个星期数:");
        int week = sc.nextInt();

        switch (week) {
            case 1:
                System.out.println("周一跑步");
                break;
            case 2:
                System.out.println("周二俯卧撑");
                break;
            case 3:
                System.out.println("周三做操");
                break;
            case 4:
                System.out.println("周四睡觉");
                break;
            case 5:
                System.out.println("周五打台球");
                break;
            case 6:
                System.out.println("周六羽毛球");
                break;
            case 7:
                System.out.println("周日打篮球");
                break;
            default:
                System.out.println("输入无效,请输入1-7之间的数字");
                break;
        }
    }
}

2. 循环语句

循环语句用于重复执行一段代码块,直到满足退出条件为止。

2.1 for循环

for循环通过设置初始条件、循环条件和循环步进来控制循环的执行次数。

 //2.编写一个程序,使用循环计算1到100之间所有偶数的和。
        int num = 0;
        for (int i = 1 ;i<=100;i++){
            if (i % 2 == 0){
                num += i;
            }
        }
        System.out.println("1到100之间所有偶数的和为:"+num);

2.2 while循环

while循环在执行循环体之前先判断循环条件是否满足,如果满足则执行循环体,然后再次判断循环条件。

//珠穆拉玛峰 8848.86m 纸张0.1mm 每次对折纸张,对折多少次可以与珠穆拉玛峰一样高?
        //单位换算 8848.86m = 8848860 mm
        //纸张对折高度 为方便计算 在0.1mm的基础上给单位扩大十倍 1mm
        int i= 1;
        int count = 0;
        while (i<88488600){
            //对折次数
            count++;
            //纸张对折
            i+=i;
        }
        System.out.println("对折"+count+"次,可以与珠穆拉玛峰一样高。");

2.3 do-while循环

do-while循环先执行循环体,然后再判断循环条件是否满足,如果满足则继续执行循环体。

//珠穆拉玛峰 8848.86m 纸张0.1mm 每次对折纸张,对折多少次可以与珠穆拉玛峰一样高?
//单位换算 8848.86m = 8848860 mm
//纸张对折高度 为方便计算 在0.1mm的基础上给单位扩大十倍 1mm
int i = 1;
int count = 0;

do {
    //对折次数
    count++;
    //纸张对折
    i += i;
} while (i < 88488600);

System.out.println("对折" + count + "次,可以与珠穆拉玛峰一样高。");

3. 跳转语句

跳转语句用于在程序中控制代码的跳转和执行流程的改变。

3.1 break语句

break语句用于跳出当前循环或switch语句,终止其执行。

3.2 continue语句

continue语句用于跳过当前循环的剩余代码,直接进入下一次循环。

3.3 return语句

return语句用于结束方法的执行并返回一个值。

4. Switch语句和If-else语句用法上的小区别:

4.1 Switch语句

Switch语句适合在有多个固定选项需要根据不同的值执行不同的代码块时使用。它的特点包括:

  • 适用于离散且有限的值集合,例如枚举值或整数常量。
  • 通过使用case标签来匹配不同的值,并执行相应的代码块。
  • 可以使用default标签定义一个默认的代码块,当没有匹配到任何case时执行。

Switch语句的优点在于能够简化代码结构,使得代码更易读、易于维护。

4.2 If-else语句

If-else语句适合在条件判断需要基于表达式的真假(布尔值)或复杂的逻辑判断时使用。它的特点包括:

  • 适用于各种条件判断,包括基于范围、大小、关系等复杂的逻辑判断。
  • 可以根据不同的条件组合来确定执行的代码块。
  • 可以使用多个if和else-if语句来构建复杂的条件逻辑。

If-else语句的优点在于灵活性和可扩展性,可以处理各种复杂的条件判断情况。

4.3 如何选择

在选择Switch语句还是If-else语句时,需要考虑以下因素:

  • 条件的性质:Switch语句适合处理离散的、有限的值集合,而If-else语句适合处理更复杂的条件判断。
  • 代码的简洁性:Switch语句可以简化代码结构,使得代码更清晰、易读。而If-else语句更灵活,可以处理更多的条件组合。
  • 代码的可读性:根据具体情况选择Switch语句或If-else语句,使得代码更易于理解和维护。

综上所述,根据条件的性质、代码的简洁性和可读性来选择合适的条件控制结构。在实际开发中,根据具体的业务逻辑和代码需求来选择使用Switch语句或If-else语句,以提高代码的可读性和简洁性。

通过掌握条件语句、循环语句和跳转语句,我们可以更灵活地控制程序的执行流程,根据不同的条件执行不同的代码块,实现复杂的逻辑和循环操作。这些控制流语句是编程中必不可少的工具,对于构建强大的程序非常重要。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值