Java_控制结构

一、顺序控制

1、介绍

程序从上到下逐行地执行,中间没有任何判断和跳转。

2、注意事项

    public static void main(String[] args) {
        int num1 = 12;
        int num2 = num1 + 2;//正确   向前引用原则
    }
    public static void main(String[] args) {
        int num2 = num1 + 2;
        int num1 = 12;//错误
    }

二、分支控制if-else

1、介绍

让程序有选择的执行,分支控制有三种:单分支、双分支、多分支

1)单分支

###基本语句

if(条件表达式){

执行代码块;(可以有多条语句)

}

说明:当条件表达式为ture时,就会执行 { } 的代码。如果为false,就不执行。

特别说明,如果 { } 中只有一条语句,则可以不用 { } ,建议写上 { } 。

###案例

package com;
import java.util.Scanner;

public class kongzhijiegou {
    public static void main(String[] args) {

        Scanner myScanner = new Scanner(System.in);
        System.out.println("请输入你的年龄:");
        int age = myScanner.nextInt();
        if (age > 18){
            System.out.println("你的年龄已大于18岁,要对你自己的行为负责!");
        }
        System.out.println("程序继续执行......");

    }
}

2)双分支

###基本语法

if(条件表达式){

执行代码块1;

}else{

    执行代码块2;

}

说明:当条件表达式成立,即执行代码块1;否则执行代码块2.如果执行代码块 只有一条语句,则 { } 可以省略, 否则不可以

###案例

package com;
import java.util.Scanner;

public class kongzhijiegou {
    public static void main(String[] args) {

        Scanner myScanner = new Scanner(System.in);
        System.out.println("请输入你的年龄:");
        int age = myScanner.nextInt();
        if (age > 18){
            System.out.println("你的年龄已大于18岁,要对你自己的行为负责!");
        }else{
            System.out.println("你的年龄为未成年,这次放过你了!");
        }
        System.out.println("程序继续执行......");

    }
}
package com;
import java.util.Scanner;

public class IfExercise01 {
    public static void main(String[] args) {

        Scanner myScanner = new Scanner(System.in);
        System.out.println("请输入两个数字:");
        double num1 = myScanner.nextDouble();
        double num2 = myScanner.nextDouble();

        if (num1 > 10.0){
            if (num2 < 20.0) {
                System.out.println(num1 + num2);
            }
        }
    }
}

package com;
import java.util.Scanner;

public class IfExercise01 {
    public static void main(String[] args) {

        Scanner myScanner = new Scanner(System.in);
        System.out.println("请输入一个年份:");
        double num1 = myScanner.nextDouble();

        if((num1 % 4 == 0 && num1 % 100 != 0)|| num1 % 400 == 0){
            System.out.println("这年是闰年");
        }

    }
}

3)多分支

###基本语法

if(条件表达式1){

执行代码块1;

}

else if(条件表达式2){

    执行代码块2;

}

......

else{

     执行代码块n;

}

特别说明:

(1)多分支 可以没有 else, 如果所有的表达式都不成立,则一个执行的入口都没有

(2)如果有 else,如果所有的条件表达式都不成立,则默认执行else代码块

###案例

package com;

import java.util.Scanner;

public class IfExercise03 {
    public static void main(String[] args) {

        Scanner myScanner = new Scanner(System.in);

        System.out.println("请输入您的信用分:");
        int grade = myScanner.nextInt();

        if (grade >= 1 && grade <= 100) {
            if (grade == 100) {
                System.out.println("信用极好");
            } else if (grade > 80 && grade <= 99) {
                System.out.println("信用优秀");
            } else if (grade >= 60 && grade <= 80) {
                System.out.println("信用一般");
            } else {
                System.out.println("信用不及格");
            }
        }else {
            System.out.println("输入的信用分需要在1-100,请重新输入:");
        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

竹本实

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值