java基础06 switch
public class SwitchDemo01 {
    /**
     * 韩嫣参加计算机编程大赛
    如果获得第一名,将参加麻省理工大学组织的1个月夏令营
    如果获得第二名,将奖励惠普笔记本电脑一部
    如果获得第三名,将奖励移动硬盘一个
    否则,不给任何奖励
     */
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请您输入比赛的名次:");
        int num = scanner.nextInt();
        /** 多重if 适合于 区间的判断
         * if (num == 1) {
            System.out.println("参加麻省理工大学组织的1个月夏令营");
        } else if (num == 2) {
            System.out.println("奖励惠普笔记本电脑一部");
        } else if (num == 3) {
            System.out.println("奖励移动硬盘一个");
        } else {
            System.out.println("回家继续努力学习java!");
        }*/
        /**
         * 使用swtich 做等值的判断
         *
         * 表达式的取值:  byte  short  int  char  Enum(枚举)  String(1.7+)
         * switch(表达式){
             case  常量1:
                       //代码块
                    break;
             case  常量2:
                       //代码块
                    break;
             default:
                       //代码块   没有找到匹配项  会执行default
                    break;
           }
         */
        switch (num) {
        case 1:
            System.out.println("参加麻省理工大学组织的1个月夏令营");
            break;
        case 2:
            System.out.println("奖励惠普笔记本电脑一部");
            break;
        case 3:
            System.out.println("奖励移动硬盘一个");
            break;
        default:
            System.out.println("回家继续努力学习java!");
            break;
        }
    }
}
1.根据名次获得奖励
public class Demo02 {
    // break 和 return
    public static void main(String[] args) {
        /**
         *01.  编译报错
         * switch (3) {
            case 1:
                System.out.println("参加麻省理工大学组织的1个月夏令营");
            case 2:
                System.out.println("奖励惠普笔记本电脑一部");
            default:
                System.out.println("回家继续努力学习java!");
                return; // 跳出当前的方法 后续的所有代码都不会执行
            }
            System.out.println("程序结束");*/
        /**
         * 02.  编译报错
         *  switch (3) {
          default:
                  System.out.println("回家继续努力学习java!");
            case 1:
                System.out.println("参加麻省理工大学");
            case 2:
                System.out.println("奖励惠普笔记本电脑一部");
                      return;
            }
            System.out.println("程序结束");*/
        /**
         * 03.  正常
         * switch (3) {
                default:
                    System.out.println("回家继续努力学习java!");
                    return; // 跳出当前的方法 后续的所有代码都不会执行
                case 1:
                    System.out.println("参加麻省理工大学组织的1个月夏令营");
                case 2:
                    System.out.println("奖励惠普笔记本电脑一部");
                }
                System.out.println("程序结束");*/
        /**
         * 04.  正常
         * switch (3) {
            case 1:
                System.out.println("参加麻省理工大学组织的1个月夏令营");
            case 2:
                System.out.println("奖励惠普笔记本电脑一部");
                break;
            default:
                System.out.println("回家继续努力学习java!");
                return; // 跳出当前的方法 后续的所有代码都不会执行
            }
            System.out.println("程序结束");*/
    }
}
2.常见错误
public static void main(String[] args) {
        /**
         * break  和 return  :之后不允许出现语句!
         * break:跳出switch以及当前的循环结构
         * return:跳出当前的方法体
         */
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入您的成绩:");
        int score = scanner.nextInt();
        switch (score) {
        case 1:
            System.out.println("参加麻省理工大学组织的1个月夏令营");
        case 2:
            System.out.println("奖励惠普笔记本电脑一部");
        case 3:
            System.out.println("奖励移动硬盘一个");
            break;
        default:
            System.out.println("没有奖励");
            return; // 跳出 当前的方法体
        }
        // main方法的输出句话是否能执行?
        System.out.println("大家辛苦了!");
    }
3.break和return
public class SwitchDemo03 {
    public static void main(String[] args) {
        System.out.println("**************1级菜单***************");
        System.out.println("1.登录系统");
        System.out.println("2.退出系统");
        Scanner scanner = new Scanner(System.in);
        System.out.println("请您输入选择:");
        switch (scanner.nextInt()) { // 直接接收用户的输入
        case 1:
            System.out.println("**************2级菜单***************");
            System.out.println("1.客户信息管理");
            System.out.println("2.购物结算");
            System.out.println("3.真情回馈");
            System.out.println("4.注销");
            System.out.println("请您输入选择:");
            // 再次接收用户的输入
            int answer = scanner.nextInt();
            switch (answer) {
            case 1:
                System.out.println("1.进入了客户信息管理");
                break;
            case 2:
                System.out.println("2.购物结算");
                break;
            case 3:
                System.out.println("3.真情回馈");
                break;
            case 4:
                System.out.println("4.注销");
                break;
            }
            break;
        case 2:
            System.out.println("感谢您的使用!退出系统");
            break;
        }
    }
}
4.购物选择
public class HasNextDemo04 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请您输入一个整数:");
        boolean flag = scanner.hasNextInt();
        System.out.println(flag);
        System.out.println("您输入的数字是:" + scanner.next());
        /**
         * hasNext...()系列
         * 01.获取用户的输入
         * 02.判断用户的输入
         *     if (scanner.hasNextInt()) {
            System.out.println("您输入的是整数");
        } else {
            System.out.println("您输入的不是整数");
        }
         */
    }
}
5.hasNext系列
public class SwitchDemo05 {
    public static void main(String[] args) {
        // 定义一个变量 保存换购增加的金额
        int extra = 0;
        int choose = 0; // 用户默认的选择
        Scanner scanner = new Scanner(System.in);
        System.out.println("请您输入消费金额:");
        double money = scanner.nextDouble();
        System.out.println("是否参加优惠换购活动:");
        String answer = scanner.next();
        if (answer.equalsIgnoreCase("y")) {
            System.out.println("1:满50元,加2元换购百事可乐饮料1瓶");
            System.out.println("2:满100元,加3元换购500ml可乐一瓶");
            System.out.println("3:满100元,加10元换购5公斤面粉");
            System.out.println("4:满200元,加10元可换购1个苏泊尔炒菜锅");
            System.out.println("5:满200元,加20元可换购欧莱雅爽肤水一瓶");
            System.out.println("0:不换购");
            System.out.print("请输入选择:");
            if (scanner.hasNextInt()) { // 判断用户输入是否是整数
                // 记录用户的选择
                choose = scanner.nextInt();
                switch (choose) {
                case 1:
                    if (money >= 50) {
                        extra = 2;
                    }
                    break;
                case 2:
                    if (money >= 100) {
                        extra = 3;
                    }
                    break;
                case 3:
                    if (money >= 100) {
                        extra = 10;
                    }
                    break;
                case 4:
                    if (money >= 200) {
                        extra = 10;
                    }
                    break;
                case 5:
                    if (money >= 200) {
                        extra = 20;
                    }
                    break;
                case 0:
                    System.out.println("您选择了不换购!");
                    break;
                }
            } else {
                System.out.println("您输入的不正确!");
            }
        } else if (answer.equalsIgnoreCase("n")) {
            System.out.println("谢谢您的光临!");
        } else {
            System.out.println("您的输入不正确!");
        }
        // 结账
        double totalMoney = money + extra;
        System.out.println("您共消费:" + totalMoney);
        switch (choose) {
        case 1:
            System.out.println("成功换购百事可乐饮料1瓶");
            break;
        case 2:
            System.out.println("成功换购500ml可乐一瓶");
            break;
        case 3:
            System.out.println("成功换购5公斤面粉");
            break;
        case 4:
            System.out.println("成功换购1个苏泊尔炒菜锅");
            break;
        case 5:
            System.out.println("成功换购欧莱雅爽肤水一瓶");
            break;
        default:
            System.out.println("没有任何换购");
            break;
        }
    }
}
6.优惠换购活动
java基础06 switch的更多相关文章
- 【Java基础】switch语句实现根据数字输出对应星期
		代码: import java.util.Scanner; /* * switch语句格式: * switch(表达式) { * case 值1: * 语句体1; * break; * case 值2 ... 
- java基础(六)  switch语句的深入解析
		引言 switch 语句是非常的基础的知识,掌握起来也不难掌握,语法比较简单.但大部分人基本是知其然,不知其所以然.譬如 早期JDK只允许switch的表达式的值 int及int类型以下的基本类型 ... 
- java基础之switch
		switch 语句由一个控制表达式和多个case标签组成. switch 控制表达式支持的类型有byte.short.char.int.enum(Java 5).String(Java 7). swi ... 
- Java基础(1):Switch语句注意的5个地方
		不得不说的几点小秘密: 1. switch 后面小括号中表达式的值必须是整型或字符型 2. case 后面的值可以是常量数值,如 1.2:也可以是一个常量表达式,如 2+2 :但不能是变量或带有变量的 ... 
- java基础之 switch
		switch 语句的格式: switch ( 整型或字符型变量 ) { case 变量可能值1 : 分支一; break; case 变量可能值2 : 分支二; break; case 变量可 ... 
- Java基础06 组合
		作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 我们已经尝试去定义类.定义类,就是新建了一种类型(type).有了类,我们接着构造 ... 
- java基础06 IO流
		IO用于在设备间进行数据传输的操作. Java IO流类图结构: IO流分类 字节流: InputStream FileInputStream BufferedInputStream Output ... 
- java基础06 Java中的递归
		一.递归是指直接或间接地调用自身. 二.递归的注意事项: A:要有出口,否则就是死递归 B:次数不能过多,否则内存溢出 C:构造方法不能递归使用 三.举例子 递归 ... 
- Java基础06 组合(转载)
		在一个新类的定义中使用其他对象.这就是组合(composition).组合是在Java中实现程序复用(reusibility)的基本手段之一. 组合与"has-a" 一个对象是 ... 
随机推荐
- VBA学习笔记(1)----VBA对象属性方法
			'VBA对象 'VBA中的对象其实就是我们操作的具有方法.属性的excel中支持的对象 'Excel中的几个常用对象表示方法 '1.工作簿 ' Workbooks 代表工作簿集合,所有的工作簿,Wor ... 
- EF应用一:Code First模式
			EF的核心程序集位于System.Data.Entity.dll和System.Data.EntityFramework.dll中.支持CodeFirst的位于EntityFramework.dll中 ... 
- C++  函数的扩展①
			//函数扩展--内联函数 inline #include<iostream> using namespace std; /* c++中const常量可以替代宏常数定义 如: const i ... 
- Differential Geometry之第九章常平均曲率曲面
			第九章.常平均曲率曲面 1.Hopf微分与Hopf定理 等温坐标系(isothermal coordinate system)曲面上的一种特殊坐标系.若曲面的第一基本形式I在坐标系(u,v)下可以写成 ... 
- 硬件设计之串口收发器---ISO1050 (现行) 隔离式 5V CAN 收发器
			http://www.ti.com.cn/product/cn/iso1050 http://www.deyisupport.com/question_answer/dsp_arm/sitara_ar ... 
- v8随心记
			因为node原因,研究v8已经有段时间了,但是一直也没有抽空写点什么,现在想想有好多当时清晰的东西又模糊了.哎,伤心的很啊.但是一时又想不起什么章法,所以只能随手胡乱写了. 下载.编译: https: ... 
- Angular 组件与模板 - 属性指令
			指令概览 在 Angular 中有三种类型的指令: 组件 — 拥有模板的指令 结构型指令 — 通过添加和移除 DOM 元素改变 DOM 布局的指令 属性型指令 — 改变元素.组件或其它指令的外观和行为 ... 
- Lua中 MinXmlHttpRequest如何发送post方式数据
			local xhr=cc.XMLHttpRequest:new() xhr.responseType=cc.XMLHTTPREQUEST_RESPONSE_JSON xhr:open(“POST”,& ... 
- 【BZOJ4606】[Apio2008]DNA DP
			[BZOJ4606][Apio2008]DNA Description 分析如DNA序列这样的生命科学数据是计算机的一个有趣应用.从生物学的角度上说,DNA 是一种由腺嘌呤.胞嘧啶.鸟嘌呤和胸腺嘧啶这 ... 
- JS内存泄漏排查方法-Chrome Profiles
			原文链接:http://caibaojian.com/chrome-profiles.html 一.概述 Google Chrome浏览器提供了非常强大的JS调试工具,Heap Profiling便是 ... 
