zoukankan      html  css  js  c++  java
  • Java选择流程控制语句

    6 选择流程控制语句

    概述:

      是程序中最简单最基本的流程控制,没有特定的语法结构,只需要按照代码的先后顺序,依次执行,程序中大多数的代码都是这样执行的。

      流程图:

       

     if语句的格式:

      第一种:

        if(关系表达式){

          语句体;

        }

      

     执行流程:

        首先判断关系表达式看其结果是true还是false

      如果是true就执行语句体

      如果是false就不执行语句体

     流程图:

     

    案例:

    package com.lyc.test;
    
    public class IfDemo01 {
        public static void main(String[] args) {
            /**
             * if语句有三种格式:
             * 
             * 第二种: 
             *     if(关系表达式){ 
             *         语句体; 
             *  }
             * 
             * 执行流程: 
             *     A.首先判断 关系表达式 看其结果是true还是false 
             *     B.如果是true,就执行语句体
             *     C.如果是false,就不执行语句体
             * 
             */
            
            // 定义两个变量
            int a = 10;
            int b = 20;
            if (a == b) {
                System.out.println("a等于b");
            }
            
            int c = 10;
            if (a == c) {
                System.out.println("a等于c");
            }
    
        }
    }

     第二种:

        if(关系表达式){

         语句体1;

       }else{

         语句体2;

       }

     执行流程:

      首先判断关系表达式看其结果是true还是false

      如果是true就执行语句体1

      如果是false就执行语句体2

     流程图:

     

    案例:

    package com.lyc.test;
    
    public class IfDemo02 {
        public static void main(String[] args) {
            /**
             * if语句有三种格式:
             * 
             * 第二种: 
             *     if(关系表达式){ 
             *         语句体1; 
             *  }else{
             *      语句体2
             *  }
             * 
             * 执行流程: 
             *     A.首先判断 关系表达式 看其结果是true还是false 
             *     B.如果是true,就执行语句体1
             *     C.如果是false,就不执行语句体2
             * 
             */
            
            //判断是奇数还是偶数
            // 定义两个变量
            int a = 20;
            //给a重新赋值
            a = 15;
            if (a % 2 ==0) {
                System.out.println("a是偶数");
            }else{
                System.out.println("a是奇数");
            }
    
        }
    }

     第三种:

      if(关系表达式1){

        语句体1; 

      }else if(关系表达式2){

        语句体2;

      }else if(关系表达式3){

        语句体3;

      }

      ......

      else{

        语句体n+1;

      }

     执行流程:

      首先判断关系表达式1看其结果是true还是false

      如果是true就执行语句体1

      如果是false就继续判断关系表达式2看其结果是true还是false

      如果是true就执行语句体2

      如果是false就继续判断关系表达式…看其结果是true还是false

      …

      如果没有任何关系表达式为true,就执行语句体n+1

     流程图:

      

    案例:

    package com.lyc.test;
    
    public class IfDemo03 {
        public static void main(String[] args) {
            /**
             * if语句有三种格式:
             * 
             * 第三种: 
             *     if(关系表达式1){ 
             *         语句体1; 
             *  }else if(关系表达式2){
             *      语句体2;
             *  }else if(关系表达式3){
             *      语句体3;
             *  }
             *  .......
             *  else{
             *      语句体n+1;
             *  }
             * 
             * 执行流程: 
             *     A.首先判断 关系表达式 看其结果是true还是false 
             *     B.如果是true,就执行语句体1,如果是false就继续进行表达式2的判断,
             *         看其结果是true还是fasle
             *     C.如果是true,就执行语句体2,如果是false就继续进行表达式...的判断
             *         看其结果是true还是false
             *      .......
             *     D.如果没有一个为true的,就执行语句体n+1
             * 
             * if语句的三种格式:
             *     第一种格式适合做一种情况的判断
             *     第二种格式适合做二种情况的判断
             *  第三种格式适合做多种情况的判断
             * 
             */
            
            // x和y的关系满足如下:
            // x>=3 y = 2x + 1;
            // -1<=x<3 y = 2x;
            // x<=-1 y = 2x – 1;
            // 根据给定的x的值,计算出y的值并输出。
            
            //定义变量 
            int x = 5;
            int y = 0;
            if (x >= 3) {
                y = 2*x+1;
            }else if (x >=-1 && x< 3) {
                y = 2*x;
            }else if (x<=-1) {
                y = 2*x-1;
            }
            System.out.println("最后y的值为:"+y);
            
        }
    }

    If语句练习:

      1> if语句实现获取两个数据较大值

    package com.lyc.test;
    
    import java.util.Scanner;
    
    public class IfDemo04 {
        public static void main(String[] args) {
            /**
             * 键盘录入两个数据,获取这两个数据的最大值
             * 
             * 分析:
             *     A.看到键盘录入,三步骤:
             *         导包,创建对象,接收数据
             *     B.获取这两个数据的最大值,其实就是判断这两个数据谁大,把较大的值输出就可以了
             * 
             * 导包:
             *     A.手动导包:import java.util.Scanner;
             *     B.鼠标点击红色叉叉,自动生成
             *     C.快捷键导包:ctrl+shift+o
             */
            //创建对象
            Scanner sc = new Scanner(System.in);
            //接收数据
            System.out.println("请输入第一个数:");
            int num1 = sc.nextInt();
            System.out.println("请输入第二个数:");
            int num2 = sc.nextInt();
            
            
            //采用if语句的第二种格式:
            if (num1>num2) {
                System.out.println("较大的值是:"+num1);
            }else{
                System.out.println("较大的值是:"+num2);
            }
            
            //有的时候我们拿到了想要的值后,未必想直接输出。所以我们可以定义一个变量来接收我们拿到的值
            int max = 0;
            
            if (num1>num2) {
                max=num1;
            }else{
                max=num2;
            }
            
            max+=100;
            System.out.println(max);
            
            
        }
    }

      2> if语句实现判断学生等级

    package com.lyc.test;
    
    import java.util.Scanner;
    
    public class IfDemo05 {
        public static void main(String[] args) {
            /**
             * 键盘录入学生的考试成绩,根据考试成绩来判断学生属于那个级别
             * 90-100 优秀
             * 80-90     好
             * 70-80     良
             * 60-70   及格
             * 60以下   不及格
             * 如果输入的成绩没在0-100之内,则判断输入错误
             */
            //创建对象
            Scanner sc = new Scanner(System.in);
            //接收数据
            System.out.println("请输入学生的考试成绩:");
            int score =sc.nextInt();
            
            //if语句的第三种格式:
            if(score<0 || score>100){
                System.out.println("你输入的学生成绩是错误的!!!");
            }else if(score>=90 && score<=100){
                System.out.println("成绩属于优秀");
            }else if(score>=80 && score<90){
                System.out.println("成绩属于好");
            }else if(score>=70 && score<80){
                System.out.println("成绩属于良");
            }else if(score>60 && score<70){
                System.out.println("成绩属于及格");
            }else{
                System.out.println("成绩属于不及格");
            }
            
        }
    }

    switch语句的格式执行流程

     格式解释:

      switch表示这是switch语句

      表达式的取值:byte,short,int,char

      JDK5以后可以是枚举

      JDK7以后可以是String

      case后面跟的是要和表达式进行比较的值

      语句体部分可以是一条或多条语句

      break表示中断,结束的意思,可以结束switch语句

      default语句表示所有情况都不匹配的时候,就执行该处的内容,和if语句的else相似。

     执行流程

       首先计算出表达式的值

      其次,和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结束。

      最后,如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束掉。

     switch语句执行流程图

     使用swit语句实现根据数字输出对应星期

    package com.lyc.test;
    
    import java.util.Scanner;
    
    public class SwitchDemo {
    
        public static void main(String[] args) {
            /**
             * switch语句格式:
             *     switch(表达式){
             *         case 值1:
             *             语句体1;
             *             break;
             *         case 值2:
             *             语句体1;
             *             break;
             *         ......
             *         default:
             *             语句体n+1;
             *             break;
             *  }
             */
            Scanner sc = new Scanner(System.in);
            
            System.out.println("请输入一个(1-7)之间的数字:");
            int day = sc.nextInt();
            
            //switch语句实现选择
            switch (day) {
            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("你输入的数字没在范围内");
                break;
            }    
        }
    }
  • 相关阅读:
    js最佳实践
    js图片库 案例
    DOM
    js语法
    导航栏的ul中的li设置问题
    wDatepicker97的用法(点击事件联动)
    jqueyr validtion的使用
    哥哥写的例子(后台没有进行排序分组的时候,前台进行自己分组)
    关于require js加载的时候报错的问题
    一些简单的三目运算的使用(举例购物车)
  • 原文地址:https://www.cnblogs.com/chao123/p/10229309.html
Copyright © 2011-2022 走看看