“Java switch分支语句”的版本间的差异

来自CloudWiki
跳转至: 导航搜索
第43行: 第43行:
 
练习:
 
练习:
 
*利用switch的形式编程实现计算月份天数。
 
*利用switch的形式编程实现计算月份天数。
*程序运行时用户输入具体的年份和月份,然后输出对应的年份要求月份的天数。比如,用户输入的年份为2018,月份为1,则输出31天。
+
**程序运行时用户输入具体的年份和月份,然后输出对应的年份要求月份的天数。比如,用户输入的年份为2018,月份为1,则输出31天。
 
+
*使用switch模拟中国移动10086客户服务电话,如果用户输入1,打印“查询话费”,如果用户输入2,打印“话费充值”,如果用户输入3,打印“故障申报”,如果用户输入4,打印“人工服务”;
 +
*
 
返回 [[Java程序设计]]
 
返回 [[Java程序设计]]

2018年3月18日 (日) 15:02的版本

  • switch语句可以将多选一的情况简化,而使程序简洁易懂。
  • switch语句由一个控制表达式和多个case标签组成,和if语句不同的是,switch语句后面的控制表达式的数据类型只能是byte、short、char、int、枚举、String六种类型(其中枚举类型和String类型在Java 7才允许),不能是boolean类型。
  • switch语句往往需要在case标签后紧跟一个代码块,case标签作为这个代码块的标识。switch语句的语法格式如下:
switch (表达式) { 
  case 选择值1 :
    语句块主体1 
    break ;
  case 选择值2 :
    语句块主体2 
    break ;
  …… 
  case 选择值n :
    语句块主体n 
    break ;
  default:
    语句块主体n+1 
}

注解:

  • switch语句先计算括号中表达式的结果。
  • 根据表达式的值依次匹配case关键字后的选择值1、选择值2、…、选择值n等值,若是所有case的选择值皆不符合,则执行default关键字后的语句块主体,执行完毕即离开switch语句。
  • 如果遇到某个case的选择值匹配表达式的结果,就会执行该case所对应的语句块主体,一直遇到break语句后才离开switch语句。
  • 若是没有在case语句结尾处加上break语句,则会一直执行到switch语句的尾端才会离开switch语句。
Scanner scanner = new Scanner(System.in);
//获取用户对于菜单的选择
String value = scanner.next();
int choise = Integer.valueOf(value);
switch(choise) {
    case 1: 
	System.out.println("您选择了处理查询所有书籍的业务");
	break;
    case 2: 
	System.out.println("您选择了处理按书籍编号查询");
	break;
    case 3:
	System.out.println("您选择了购买书籍");
	break;
    default:
	System.out.println("您的输入不正确,必须在1~6范围内!");
  }

练习:

  • 利用switch的形式编程实现计算月份天数。
    • 程序运行时用户输入具体的年份和月份,然后输出对应的年份要求月份的天数。比如,用户输入的年份为2018,月份为1,则输出31天。
  • 使用switch模拟中国移动10086客户服务电话,如果用户输入1,打印“查询话费”,如果用户输入2,打印“话费充值”,如果用户输入3,打印“故障申报”,如果用户输入4,打印“人工服务”;

返回 Java程序设计