美文网首页
分支结构if 与swith

分支结构if 与swith

作者: 腹黑小叶子orz | 来源:发表于2017-07-23 11:51 被阅读0次

    代码的执行顺序是从上至下,逐条执行。也存在两种结构,一种是分支结构,一种是循环结构。

     if - else  /     if   /     if   -  else  if   - else:

    第一种:

    if   -  else:

    if(a){

    b;}  else {

    c;}
    如果a成立,则执行b,否则执行c。表示只有两种情况出现,a或者!a。

    结构:if(判断语句){语句体;

    }

    if(    判断句    ){   执行句;

    }else{   另一个执行句;

    if(     判断句     ){    执行句;

    }else if     (判断句)  {   执行句;

    }

    }

    例如:判断用户名与密码是否正确

    public static void Main(string[] args)          {

    Console.WriteLine("请输入用户名");         

     string username = Console.ReadLine();  //键盘上获取字符 。一定记住()!!!  


     Console.WriteLine("请输入密码");           

    string password = Console.ReadLine();

    if (username == "admin" &&password == "888888")    {                

    Console.WriteLine("密码正确");  

     }   else  {

     if (username != "admin")    {    

    Console.WriteLine("用户名不正确");

    }  else if   (password != "888888")   {               

    Console.WriteLine("密码不正确");

     }

     }   

    Console.ReadKey(); //还不懂什么意思
    }

    该执行时,数据进入if的判断语句,若符合判断要求,则进入语句体。不符合,则不进入if语句。后面的else中不写条件,因为它是要么等于if判断句中的结果,要么不等于。所以不需要写。若嵌套则可以进行选择。


    第二种:

    if:

    if   (   a )   { 

     b  ;

     } if (  c  ){

    d   ;

    }

    而if后面可以在接 if,表示不一定只有两种情况。例如if(a)b; if(c)d;
    如果a成立,则执行b,否则如果c成立,则执行d。这种情况存在三种情况:a,!a&c,!a&!c,只是最后一种情况没有执行语句,可重复嵌套,有符合if条件时进入执行。

    if(判断语句){  

    语句体1 ;

    } if (判断语句){

     语句体2 ;

    }

    该语句执行时,首先进入if的条件判断句,符合,进入语句体1,否则进入语句体2.语句中可以进行嵌套



    第三种:

    if   -   else   if    -   else:

    if (     a     )    {    b     ;}

    else  if  (      c      )    {    d    ;}

    else    {   m   ;}
    例如if(a)b;else if(c)d;else m;
    如果a成立,则执行b,否则如果c成立,则执行d,否则执行m。有三种情况a,!a&c,!a&!c。if(判断语句){语句体   1;

    }else if{     语句体2    ;

    }else  if{      语句体3  ;

    }else{         语句体N   ;

    }该语句执行时,拿当前要判断的条件去和 if 之后条件匹配,如果匹配到,执行对应的语句体,如果没有匹配到,执行语句体n,最后执行大括号之后的语句。

    if    - else if    - else 结构中的else 是可以省略的,但是要看业务条件


    swith    -   case   :

    switch - case 结构
     
     switch (变量) {
               case 确定值1:
               处理方式1;
                break;
               case 确定值2:
               处理方式2;
               break;
               default:
               最终处理方式;
                break;
     }

    运行流程:

    当程序运行到switch - case 结构的时候,直接用switch 之后的变量去匹配 case对应的值,如果匹配执行对应的处理方式,运行到break跳出switch - case 结构。如果没有匹配项,执行default里面的处理方式,遇到break跳出。

    注意事项:
      1. 在switch-case 结构中,break 可以省略,但是会影响之前的case 选项
      2. 在switch - case 结构中,只能只执行在case 或者 default里面的语句 剩下一概不执行,而且在Java中编译不过。
      3. 在switch-case 结构中,不允许出现相同的case 选择,会报错
      4. 在switch-case 结构中,可以省略default

    案例:import java.util.Scanner;//打包

    class SwitchTest {
     public static void main(String[] args) {
     
      //提示用户选择自己的菜品
      Scanner sc = new Scanner(System.in);//获取键盘内容
      System.out.println("请问客官您点什么?");
      System.out.println("1.红烧肉~~~");
      System.out.println("2.糖醋里脊~~~");
      System.out.println("3.蒜蓉油麦菜~~~");
      System.out.println("4.麻辣小龙虾~~~");
      System.out.println("5.哈尔滨冰啤~~");
      int choose = sc.nextInt(); //从键盘上获取用户的选择
      
      //利用switch - case 结构,对用户输入的数据进行处理
      switch (choose) {//choose在上面定义了,指键盘上获取的内容。
       //System.out.println("你猜猜这个会出现吗?"); //  不会
       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;
       /*default:
        System.out.println("不闹我们还是朋友");//用户什么也没有选择,可以省略
        break;
       */
      }
       
      System.out.println("Program Ending");//当省略default,又需要输出,不省略default时,用户输入错误,会两个同时出现。
     }
    }

    叶子是初学者,暂时的想法,若有错误,请指出错误!一定改正!谢谢~~~


     

    相关文章

      网友评论

          本文标题:分支结构if 与swith

          本文链接:https://www.haomeiwen.com/subject/thbukxtx.html