zoukankan      html  css  js  c++  java
  • 二、分支语句

    1.什么是分支?
      判断所给定的条件是否满足,根据判断的结果对应执行不同的语句
    2.if语句
      使用布尔表达式或者布尔值作为对应的条件来进行分支的控制
      a.简单if语句【单分支】
      语法:
      if(条件表达式){
      语句;
      }
      说明:1>这里的条件表达式一般使用的关系运算符
      2>如果条件表达式成立,则执行大括号中的语句,反之,不执行,程序在从上往下一次执行的过程中,直接跳过if语句,继续执行后面的语句
      b.if-else语句【双分支】
      语句:
      if(条件表达式){
      语句1;
      }else{
      语句2;
      }
    说明:
    如果条件表达式成立,则执行语句1,如果不成立,则执行语句2【实现了二选一的操作】

      c.if-else-if-else...【多重分支】
      语法:
      if(条件表达式){
      语句1:
      }else if(条件表达式){
      语句2;
      }else if
      ...
      else{
      语句n;
      }
    说明:根据不同的表达式成立与否去执行对应的语句,但是,注意:只执行其中的一个分支【只要条件一旦成了,则执行对应的语句,然后整个if-else-if-else-...语句结束】
      d.嵌套if语句
      在if语句中,再次添加if语句
      语法:
      if(条件表达式1){
      语句1;
      if(条件表达式2){
      语句2;
      }
      }
    说明:只有条件表达式1成了的情况下,当条件表达式2也成了时,才会执行语句2
    注意:从语法的角度来说,嵌套的层数没有限制,但是,为了提高程序的可读性,尽量嵌套的层数不要超过三层


    3.switch-case语句
      语法:
      switch(变量){
      case 常量1:{语句1; break;}
      case 常量2:{语句2; break;}
      case 常量3:{语句3; break;}
      case 常量4:{语句4; break;}
      default:{语句5;}
      }
    说明:根据变量的值进行匹配,如果在case分支中匹配到了相应的常量值,则执行case后面对应的语句,然后整个switch-case结束,当所有的case都没有匹配上的情况下,会执行default中的语句。
      break的作用:如果没有break,case语句会向下穿透,作用直接跳出switch分支语句
      default作用:当所有的case分支都不匹配的时候,默认执行default中的语句
      case先执行,default后执行。
      当default书写在case分支之后时,最后执行,执行完成之后,整个switch-case语句结束。当default书写在case前面或者中间的时候,务必添加break,防止case语句向下穿透。

    总结:变量的类型:byte,short,int,char,String,枚举

    穿插:
    Scanner的使用
    作用:表示获取从控制台直接输入的内容
    使用步骤:
    第一步:导包【文件夹】主要是获取指定的类【如果有一个类在Java.lang报下,就不需要导包,是默认包】,格式
    import java.util.Scanner;
    第二步:创建输入器,格式:Scanner sc = new Scanner(system.in);
    第三步:开始获取控制台输入的值

    注意点:
    sc.next ()识别不到空格,sc.nextLine()可以

    总结:switch和if语句的区别
    相同点:都是分支语句【选择语句】
    不同的:
    a.语句后的表达式类型不同,if语句的表达式的值是Boolean,但是switch的byte,short,int,char,String,枚举
    b.适用场景:变量的值在某个区间之内的话,选用if语句,switch语句适用于变量的某个定值【if的适用频率更广】

  • 相关阅读:
    sprinf sprintf_s 的用法
    c++中static的用法详解
    C++数值类型与string的相互转换
    setTimeout(function(){}, 0);
    学习 Node.js 的 6 个步骤
    $destroy——angular
    模态框——angular
    日期控件
    前端加密
    ui-router
  • 原文地址:https://www.cnblogs.com/lsp-lsp/p/7341780.html
Copyright © 2011-2022 走看看