zoukankan      html  css  js  c++  java
  • 【4】 java流程控制之选择结构

    一、流程控制概述

    三大流程控制语句:顺序、选择、循环
    1)顺序:依次执行
    2)选择:if ,if-else,多重 if结构,嵌套if,switch
    3)循环:while,do-while,for,循环嵌套

    二、多重if结构

    格式:

    if(条件){
    语句1;
    }
    else{
    语句2;
    }
    多重if-else结构案例:

    import java.util.Scanner;
    public class ScoreAssess {
        public static void main(String[] args) {
        /*
        成绩大于90分,输出“优秀”
        成绩大于80分且小于90分的,输出“良”
        成绩大于等于60分小于80分,输出“中”
        成绩小于60分,输出“不及格”
        */
        System.out.println("请输入成绩");
            Scanner sc= new Scanner(System.in);
            int score= sc.nextInt();
            if (score>=90)
                System.out.println("优秀");
            else if (score>=80)//相当于if((score>=80)&(score<90))
                System.out.println("良");
            else if(score>=60)//相当于if((score>=60)&(score<80))
                System.out.println("中等");
            else
                System.out.println("不及格");
        }
    }
    请输入您的成绩: 85
    良好
    请输入您的成绩: 55
    不及格
    请输入您的成绩: 30
    不及格

    三、嵌套if结构

    else会和离自己最近的if匹配,为了保证else和正确的if匹配,一定不要遗漏大括号。
    格式:
    if(表达式)
        if(表达式)
            if(表达式)
                语句;
    else
        语句;                

     嵌套if结构结构案例:

    public class Twe {
    
        public static void main(String[] args) {
    //定义两个整型变量并初始化
            int x=15,y=5;
    //判断x和y是否相等
            if(x!=y) {
                if(x>y) {
                    System.out.println(x+"大于"+y);
                }else {
                    System.out.println(x+"小于"+y);
                }
            }else {
                System.out.println(x+"和"+y+"相等");
    
            }
        }
    }

    四、switch结构

    1)if和switch的区别
    if结构:判断条件是boolean类型,判断条件是一个范围。
    switch结构:判断条件是常量值。ps:有多条case语句,break语句不是必须的可以去掉。default类似else
     
    2.)switch的整个流程。
    计算表达式的值,然后与case进行匹配,匹配成功则执行下面的语句,如果有break则跳出整个switch结构,没有则下面case情况的语句及default的语句都会执行。
    最后的default是前面的case都不成立则执行,但是default可以省略,如果case所有情况都不满足且没有default,则跳出switch结构。
    switch又叫多路选择结构。
     
    3)在JDK6.0及之前的版本中,switch中表达式的值只能为int类型,或者与int等价的类型如byte,short,char类型。但是JDK7.0之后表达式的值可以是基本数据类型byte,short,int,char及String类型。
     
    4)switch的代码结构
    switch(表达式){
    case 常量表达式1:
    语句1;break;
    case 常量表达式2:
    语句2;break;
    default:
    语句3;
    }
    5)案例

    import java.util.Scanner;
    public class Demo1 {
    
        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            System.out.println("请输入一个数字:");
            int n = sc.nextInt();
            switch (n) {
                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的范围之内!");
            }
        }
    }
    //System.out.println("请输入一个表示星期的英文单词:");
    //String week = sc.next();//输入字符串,存在变量week中
    //week=week.toUpperCase();//字符串全部改为大写
     
     
     
     

  • 相关阅读:
    个人中心标签页导航(2017.12.13)
    评论列表显示及排序,个人中心显示(2017.12.12)
    20199329 2019-2020-2 《网络攻防实践》 综合实践
    20199329 2019-2020-2 《网络攻防实践》第十二周作业
    20199329 2019-2020-2 《网络攻防实践》第十一周作业
    20199329 2019-2020-2 《网络攻防实践》第十周作业
    20199329 2019-2020-2 《网络攻防实践》第九周作业
    20199329 2019-2020-2 《网络攻防实践》第八周作业
    20199329 2019-2020-2 《网络攻防实践》第七周作业
    20199329 2019-2020-2 《网络攻防实践》第六周作业
  • 原文地址:https://www.cnblogs.com/haifeima/p/12597608.html
Copyright © 2011-2022 走看看