java基础 08 流程控制Switch选择结构

 

witch多分支结构:

 

           1. 表达式值必须为有序数值 (整型,字符等) 不能为浮点数。

 

           2. case字句中的值必须是常量,且所以有case字句中的值应该是不同的。

 

           3. default字句是可任选的,当没有匹配的case时,执行default

 

           4. 表达式值与某个case常量匹配时,case子句就成为入口,执行完入口的case子句后,

 

               一直往下执行后面的case子句,这就得用Break语句来跳出当前switch语句。

 

          注意:1. 允许多个不同case标号执行相同一所程序。

 

                           例:case 常量 i ;

 

                                  case 常量 j ;

 

                                               语句;

 

                     2. 每个case子句常量值必须各不相同。

 

 

           格式:  switch(表达式)
                      {
                          case 判断值 : 语句1;
                                break;
                          case 判断值 : 语句2;
                                break;
                            ..........
                          default:语句;
                      }

            使用:1. 判断数值不多,符合四种类型,就建议可以用switch。

                      2. 对于结果为Boolean类型判断,使用if,if的使用范围更广。

 

package src1;

import java.util.Scanner;

import javax.swing.plaf.basic.BasicPasswordFieldUI;

public class Demo15
{
public static void main(String[] args)
{
  Scanner scanner=new Scanner(System.in);
  System.out.println("请输入");
  int  world=scanner.nextInt();
  switch (world)
  {
  case 1:
//else if(world==1)
       System.out.println("优秀");
  break;
  case 2:
  System.out.println("良好");
  case 3:
  System.out.println("及格");
  case 4:
  System.out.println("再接再厉");
  default:
  System.out.println("未知等级");
  }
}
}

 字符串的比较

package src1;

public class Demo16
{
public static void main(String[] args)
{
/*
* jdk7的新特性,表达式结果可以是字符串!!!
* 字符的本质是数字
* 反编译 Java---class (字节码文件)---反编译(IDEA)
*/
  String name="kuangshen";
  switch (name)
  {
  case "kuang":
  System.out.println("kuang");
  case "kuangshen":
  System.out.println("Hello");
  break;
  default :
  System.out.println("弄啥嘞");
  }
}
}


package src1;

import java.awt.desktop.AboutHandler;
import java.time.Year;
import java.util.Scanner;

public class Demo27
{
/*
* 简单的计算器
*/
 public static void main(String[] args)
{
Scanner scanner=new Scanner(System.in);
System.out.println("请输入数字x");
int   x= scanner.nextInt();
System.out.println("请输入数字y");
int y= scanner.nextInt();
System.out.println("请输入数字符号");
String operator=scanner.next();
double jg=f(x, y, operator);
System.out.println(jg);


}
 public static int f(int x,int y ,String operator)
{
 int sum=0;
 switch(operator)
{
case "+":

sum=x+y;
System.out.println(sum);
break;
case "-":
sum =x-y;
System.out.println(sum);
case "*":
sum=x*y;

System.out.println(sum);
             break;
case "/":
sum=x/y;
System.out.println(sum);
                  break;
}
 return sum;
}
}
 





 

posted @ 2022-04-14 16:25  zjw_rp  阅读(16)  评论(0编辑  收藏  举报