1. public class SwitchDemo01 {
  2.  
  3. /**
  4. * 韩嫣参加计算机编程大赛
  5. 如果获得第一名,将参加麻省理工大学组织的1个月夏令营
  6. 如果获得第二名,将奖励惠普笔记本电脑一部
  7. 如果获得第三名,将奖励移动硬盘一个
  8. 否则,不给任何奖励
  9. */
  10. public static void main(String[] args) {
  11.  
  12. Scanner scanner = new Scanner(System.in);
  13. System.out.println("请您输入比赛的名次:");
  14. int num = scanner.nextInt();
  15.  
  16. /** 多重if 适合于 区间的判断
  17. * if (num == 1) {
  18. System.out.println("参加麻省理工大学组织的1个月夏令营");
  19. } else if (num == 2) {
  20. System.out.println("奖励惠普笔记本电脑一部");
  21. } else if (num == 3) {
  22. System.out.println("奖励移动硬盘一个");
  23. } else {
  24. System.out.println("回家继续努力学习java!");
  25. }*/
  26.  
  27. /**
  28. * 使用swtich 做等值的判断
  29. *
  30. * 表达式的取值: byte short int char Enum(枚举) String(1.7+)
  31. * switch(表达式){
  32. case 常量1:
  33. //代码块
  34. break;
  35. case 常量2:
  36. //代码块
  37. break;
  38. default:
  39. //代码块 没有找到匹配项 会执行default
  40. break;
  41. }
  42. */
  43.  
  44. switch (num) {
  45. case 1:
  46. System.out.println("参加麻省理工大学组织的1个月夏令营");
  47. break;
  48. case 2:
  49. System.out.println("奖励惠普笔记本电脑一部");
  50. break;
  51. case 3:
  52. System.out.println("奖励移动硬盘一个");
  53. break;
  54. default:
  55. System.out.println("回家继续努力学习java!");
  56. break;
  57. }
  58.  
  59. }
  60. }

1.根据名次获得奖励

  1. public class Demo02 {
  2. // break 和 return
  3. public static void main(String[] args) {
  4. /**
  5. *01. 编译报错
  6. * switch (3) {
  7. case 1:
  8. System.out.println("参加麻省理工大学组织的1个月夏令营");
  9. case 2:
  10. System.out.println("奖励惠普笔记本电脑一部");
  11. default:
  12. System.out.println("回家继续努力学习java!");
  13. return; // 跳出当前的方法 后续的所有代码都不会执行
  14. }
  15. System.out.println("程序结束");*/
  16.  
  17. /**
  18. * 02. 编译报错
  19. * switch (3) {
  20. default:
  21. System.out.println("回家继续努力学习java!");
  22. case 1:
  23. System.out.println("参加麻省理工大学");
  24. case 2:
  25. System.out.println("奖励惠普笔记本电脑一部");
  26. return;
  27.  
  28. }
  29. System.out.println("程序结束");*/
  30.  
  31. /**
  32. * 03. 正常
  33. * switch (3) {
  34. default:
  35. System.out.println("回家继续努力学习java!");
  36. return; // 跳出当前的方法 后续的所有代码都不会执行
  37. case 1:
  38. System.out.println("参加麻省理工大学组织的1个月夏令营");
  39. case 2:
  40. System.out.println("奖励惠普笔记本电脑一部");
  41. }
  42. System.out.println("程序结束");*/
  43.  
  44. /**
  45. * 04. 正常
  46. * switch (3) {
  47. case 1:
  48. System.out.println("参加麻省理工大学组织的1个月夏令营");
  49. case 2:
  50. System.out.println("奖励惠普笔记本电脑一部");
  51. break;
  52. default:
  53. System.out.println("回家继续努力学习java!");
  54. return; // 跳出当前的方法 后续的所有代码都不会执行
  55. }
  56. System.out.println("程序结束");*/
  57.  
  58. }
  59. }

2.常见错误

  1. public static void main(String[] args) {
  2. /**
  3. * break 和 return :之后不允许出现语句!
  4. * break:跳出switch以及当前的循环结构
  5. * return:跳出当前的方法体
  6. */
  7. Scanner scanner = new Scanner(System.in);
  8. System.out.println("请输入您的成绩:");
  9. int score = scanner.nextInt();
  10. switch (score) {
  11. case 1:
  12. System.out.println("参加麻省理工大学组织的1个月夏令营");
  13. case 2:
  14. System.out.println("奖励惠普笔记本电脑一部");
  15. case 3:
  16. System.out.println("奖励移动硬盘一个");
  17. break;
  18. default:
  19. System.out.println("没有奖励");
  20. return; // 跳出 当前的方法体
  21. }
  22. // main方法的输出句话是否能执行?
  23. System.out.println("大家辛苦了!");
  24. }

3.break和return

  1. public class SwitchDemo03 {
  2.  
  3. public static void main(String[] args) {
  4. System.out.println("**************1级菜单***************");
  5. System.out.println("1.登录系统");
  6. System.out.println("2.退出系统");
  7. Scanner scanner = new Scanner(System.in);
  8. System.out.println("请您输入选择:");
  9. switch (scanner.nextInt()) { // 直接接收用户的输入
  10. case 1:
  11. System.out.println("**************2级菜单***************");
  12. System.out.println("1.客户信息管理");
  13. System.out.println("2.购物结算");
  14. System.out.println("3.真情回馈");
  15. System.out.println("4.注销");
  16. System.out.println("请您输入选择:");
  17. // 再次接收用户的输入
  18. int answer = scanner.nextInt();
  19. switch (answer) {
  20. case 1:
  21. System.out.println("1.进入了客户信息管理");
  22. break;
  23. case 2:
  24. System.out.println("2.购物结算");
  25. break;
  26. case 3:
  27. System.out.println("3.真情回馈");
  28. break;
  29. case 4:
  30. System.out.println("4.注销");
  31. break;
  32. }
  33. break;
  34. case 2:
  35. System.out.println("感谢您的使用!退出系统");
  36. break;
  37. }
  38.  
  39. }
  40. }

4.购物选择

  1. public class HasNextDemo04 {
  2.  
  3. public static void main(String[] args) {
  4. Scanner scanner = new Scanner(System.in);
  5. System.out.println("请您输入一个整数:");
  6. boolean flag = scanner.hasNextInt();
  7. System.out.println(flag);
  8. System.out.println("您输入的数字是:" + scanner.next());
  9.  
  10. /**
  11. * hasNext...()系列
  12. * 01.获取用户的输入
  13. * 02.判断用户的输入
  14. * if (scanner.hasNextInt()) {
  15. System.out.println("您输入的是整数");
  16. } else {
  17. System.out.println("您输入的不是整数");
  18. }
  19. */
  20. }
  21. }

5.hasNext系列

  1. public class SwitchDemo05 {
  2. public static void main(String[] args) {
  3. // 定义一个变量 保存换购增加的金额
  4. int extra = 0;
  5. int choose = 0; // 用户默认的选择
  6. Scanner scanner = new Scanner(System.in);
  7. System.out.println("请您输入消费金额:");
  8. double money = scanner.nextDouble();
  9. System.out.println("是否参加优惠换购活动:");
  10. String answer = scanner.next();
  11. if (answer.equalsIgnoreCase("y")) {
  12. System.out.println("1:满50元,加2元换购百事可乐饮料1瓶");
  13. System.out.println("2:满100元,加3元换购500ml可乐一瓶");
  14. System.out.println("3:满100元,加10元换购5公斤面粉");
  15. System.out.println("4:满200元,加10元可换购1个苏泊尔炒菜锅");
  16. System.out.println("5:满200元,加20元可换购欧莱雅爽肤水一瓶");
  17. System.out.println("0:不换购");
  18. System.out.print("请输入选择:");
  19. if (scanner.hasNextInt()) { // 判断用户输入是否是整数
  20. // 记录用户的选择
  21. choose = scanner.nextInt();
  22. switch (choose) {
  23. case 1:
  24. if (money >= 50) {
  25. extra = 2;
  26. }
  27. break;
  28. case 2:
  29. if (money >= 100) {
  30. extra = 3;
  31. }
  32. break;
  33. case 3:
  34. if (money >= 100) {
  35. extra = 10;
  36. }
  37. break;
  38. case 4:
  39. if (money >= 200) {
  40. extra = 10;
  41. }
  42. break;
  43. case 5:
  44. if (money >= 200) {
  45. extra = 20;
  46. }
  47. break;
  48. case 0:
  49. System.out.println("您选择了不换购!");
  50. break;
  51. }
  52. } else {
  53. System.out.println("您输入的不正确!");
  54. }
  55.  
  56. } else if (answer.equalsIgnoreCase("n")) {
  57. System.out.println("谢谢您的光临!");
  58. } else {
  59. System.out.println("您的输入不正确!");
  60. }
  61. // 结账
  62. double totalMoney = money + extra;
  63. System.out.println("您共消费:" + totalMoney);
  64. switch (choose) {
  65. case 1:
  66. System.out.println("成功换购百事可乐饮料1瓶");
  67. break;
  68. case 2:
  69. System.out.println("成功换购500ml可乐一瓶");
  70. break;
  71. case 3:
  72. System.out.println("成功换购5公斤面粉");
  73. break;
  74. case 4:
  75. System.out.println("成功换购1个苏泊尔炒菜锅");
  76. break;
  77. case 5:
  78. System.out.println("成功换购欧莱雅爽肤水一瓶");
  79. break;
  80. default:
  81. System.out.println("没有任何换购");
  82. break;
  83. }
  84. }
  85. }

6.优惠换购活动

java基础06 switch的更多相关文章

  1. 【Java基础】switch语句实现根据数字输出对应星期

    代码: import java.util.Scanner; /* * switch语句格式: * switch(表达式) { * case 值1: * 语句体1; * break; * case 值2 ...

  2. java基础(六) switch语句的深入解析

    引言   switch 语句是非常的基础的知识,掌握起来也不难掌握,语法比较简单.但大部分人基本是知其然,不知其所以然.譬如 早期JDK只允许switch的表达式的值 int及int类型以下的基本类型 ...

  3. java基础之switch

    switch 语句由一个控制表达式和多个case标签组成. switch 控制表达式支持的类型有byte.short.char.int.enum(Java 5).String(Java 7). swi ...

  4. Java基础(1):Switch语句注意的5个地方

    不得不说的几点小秘密: 1. switch 后面小括号中表达式的值必须是整型或字符型 2. case 后面的值可以是常量数值,如 1.2:也可以是一个常量表达式,如 2+2 :但不能是变量或带有变量的 ...

  5. java基础之 switch

    switch 语句的格式: switch ( 整型或字符型变量 ) { case 变量可能值1 :   分支一; break; case 变量可能值2 :   分支二; break; case 变量可 ...

  6. Java基础06 组合

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 我们已经尝试去定义类.定义类,就是新建了一种类型(type).有了类,我们接着构造 ...

  7. java基础06 IO流

    IO用于在设备间进行数据传输的操作. Java IO流类图结构:   IO流分类 字节流: InputStream FileInputStream BufferedInputStream Output ...

  8. java基础06 Java中的递归

      一.递归是指直接或间接地调用自身. 二.递归的注意事项:             A:要有出口,否则就是死递归 B:次数不能过多,否则内存溢出 C:构造方法不能递归使用     三.举例子  递归 ...

  9. Java基础06 组合(转载)

    在一个新类的定义中使用其他对象.这就是组合(composition).组合是在Java中实现程序复用(reusibility)的基本手段之一.   组合与"has-a" 一个对象是 ...

随机推荐

  1. 教程-Delphi中的GExperts搜索代码快捷键

    Shift+Ait+S  打开搜索 Ctrl+Ait+R 打开上次搜索结果

  2. Pgsql特殊排序

    对字段值为A,B,C,D的时候进行特殊排序. CASE WHEN aa = 'H' THEN ' WHENaa = 'O' THEN ' ELSE aa END 对数字进行排序,升序,0排到最后面 C ...

  3. 用swift开发仪表盘控件(二)

    二.代码分析 这个控件本质就是从UIView继承的一个类而已.所以整个代码事实上就是一个定制的UIView类. 依据UIView的规则进行例如以下初始化: required init(coder aD ...

  4. latex之插入数学公式

    1. \begin{eqnarray} Ly = \lambda y \end{eqnarray} 2. \begin{gather*} \begin{split} b\\ a=b \end{spli ...

  5. 【BZOJ】1079: [SCOI2008]着色方案(dp+特殊的技巧)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1079 只能想到5^15的做法...........................果然我太弱. 其实 ...

  6. 用 HTML5+ payment方法支付宝支付遇到的坑

    用 HTML5+ payment方法碰到的第一个坑就是如果是支付宝的话签约那种支付方式. 因为 Dcloud的文档没有更新的原因你可以看到他们说的都是‘移动支付’,但是你去支付宝平台的时候看到的根本就 ...

  7. hdu 2857:Mirror and Light(计算几何,点关于直线的对称点,求两线段交点坐标)

    Mirror and Light Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  8. WPF 附加事件

    在WPF中有许多控件有他们自己的特殊的事件.按钮就是一个例子——它添加了 Click 事件,而其他任何类都没有定义该事件. 这回导致两难的境地.假设在 StackPanel 面板中包装了一堆按钮,并且 ...

  9. PDF.NET数据开发框架实体类操作实例

    PDF.NET数据开发框架实体类操作实例(MySQL)的姊妹篇,两者使用了同一个测试程序,不同的只是使用的类库和数据库不同,下面说说具体的使用过程. 1,首先在App.config文件中配置数据库连接 ...

  10. ListView中的方法

    getCount(); getItem(); getItemId(); getView(); getViewCountType();