Java流程控制语句之If选择结构

作者:工一木子 时间:2023-11-11 04:02:29 

一、选择结构大纲

  • if单选择结构

  • if双选择结构

  • if多选择结构

  • 嵌套的if结构

  • switch多选择结构

二、if单选择结构

我们很多时候需要去判断一个东西是否可行,然后我们才去执行,这样一个过程在程序中用if语句来表示

语法:

if(布尔表达式) {

//如果布尔表达式为true将执行的语句

}

Java流程控制语句之If选择结构

三、if双选择结构

那现在有个需求,公司要收购一个软件,成功了,给人支付100万元,失败了,自己找人开发。这样的需求用一个if就搞不定了,我们需要有两个判断,需要一个双选择结构,所以就有了if-else结构

语法:

if(布尔表达式) {

//如果布尔表达式的值为true

} else {

//如果布尔表达式的值为false

}

Java流程控制语句之If选择结构

四、if多选择结构

我们发现刚才的代码不符合实际情况,真实的情况还可能存在ABCD,存在区间多级判断。比如我们90-100就是A,80-90就是B…等等,在生活中我们很多时候的选择也不仅仅只有两个,所以我们需要一个多选择结构来处理这类问题!

语法:

if(布尔表达式1) {

//如果布尔表达式1的值为true执行代码

} else if (布尔表达式2) {

//如果布尔表达式2的值为true执行代码

}else if(布尔表达式3) {

//如果布尔表达式3的值为true执行代码

}else{

//如果以上布尔表达式都不为true执行代码

}

Java流程控制语句之If选择结构

五、嵌套的if结构

使用嵌套的if…else语句是合法的。也就是说你可以在另一个if或者else if语句中使用if或者else if语句。你可以像if语句一样嵌套else if…else

语法:

if(布尔表达式1) {

//如果布尔表达式1的值为true执行代码

if(布尔表达式2) {

//如果布尔表达式2的值为true执行代码

}

}

思考?我们需要寻找一个数,在1-100之间

算法思想(大数据时代,提高算法效率)

1-100之间,不用算法,如果查询的刚好是100,要查询100次

如果用二分法思想,可以提高一倍效率(先从1-50查,查不到,再从50-100查)

六、代码show

demo01:


public class IfDemo01 {
   public static void main(String[] args) {
       Scanner scanner = new Scanner(System.in);
       System.out.println("请输入内容:");
       String s = scanner.nextLine();
       //equals:判断字符串是否相等
       if (s.equals("hello")) {
           System.out.println(s);
       }
       System.out.println("End");
       scanner.close();
   }
}

demo02:


public class IfDemo02 {
   public static void main(String[] args) {
       //考试分数大于60就是及格,小于60分就是不及格
       Scanner scanner = new Scanner(System.in);

System.out.println("请输入成绩:");
       int score = scanner.nextInt();

if (score > 60) {
           System.out.println("及格");
       } else {
           System.out.println("不及格");
       }

scanner.close();
   }
}

demo03:


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

//考试分数大于60就是及格,小于60分就是不及格
       Scanner scanner = new Scanner(System.in);

/**
        * if语句至多有一个else语句,else语句在所有的else if语句之后。
        * if语句可以有若干个else if语句,他们必须在else语句之前
        * 一旦其中一个else if语句检测为true,其他的else if语句以及else语句都将跳过执行
        */
       System.out.println("请输入成绩:");
       int score = scanner.nextInt();

if (score == 100) {
           System.out.println("恭喜满分");
       } else if (score < 100 && score >= 90) {
           System.out.println("A级");
       } else if (score < 90 && score >= 80) {
           System.out.println("B级");
       } else if (score < 80 && score >= 70) {
           System.out.println("C级");
       } else if (score < 70 && score >= 60) {
           System.out.println("D级");
       } else if (score < 60 && score >= 0) {
           System.out.println("不及格");
       } else {
           System.out.println("成绩不合法");
       }

scanner.close();
   }
}

来源:https://blog.csdn.net/Prince140678/article/details/117602749

标签:If,选择结构
0
投稿

猜你喜欢

  • Java超详细分析泛型与通配符

    2023-07-28 08:34:26
  • C# zxing二维码写入的实例代码

    2021-09-01 12:23:26
  • Mybatis generator如何自动生成代码

    2023-08-13 10:15:15
  • C语言中求字符串长度的函数的几种实现方法

    2023-07-04 23:29:05
  • C#发送邮箱实现代码

    2022-04-16 11:57:57
  • Android使用自定义属性实现图片自动播放滚动的功能

    2023-04-13 18:51:49
  • Repeater中添加按钮实现点击按钮获取某一行数据的方法

    2022-05-17 08:19:31
  • Java Lock锁多线程中实现流水线任务

    2023-08-09 17:44:02
  • java.net.ConnectException: Connection refused问题解决办法

    2023-11-28 18:49:52
  • springboot+zookeeper实现分布式锁的示例代码

    2022-02-05 08:48:48
  • C语言压缩文件和用MD5算法校验文件完整性的实例教程

    2023-04-01 05:21:49
  • Springboot如何获取yml、properties参数

    2021-09-20 17:34:43
  • Java基础之面向对象机制(多态、继承)底层实现

    2023-11-12 02:59:59
  • Spring框架学习之Cache抽象详解

    2023-07-20 17:37:47
  • Java多线程下的单例模式参考

    2023-11-09 00:40:15
  • java字符串抉择

    2023-08-08 14:20:05
  • C#验证控件validator的简单使用

    2023-04-26 06:05:31
  • Java构造函数的相互调用代码示例

    2023-07-01 21:42:11
  • Java简单从文件读取和输出的实例

    2023-04-04 20:16:45
  • Android 中使用EditText 点击全选再次点击取消全选功能

    2023-09-08 00:08:44
  • asp之家 软件编程 m.aspxhome.com