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" 一个对象是 ...
随机推荐
- 偏于SQL语句的 sqlAlchemy 增删改查操作
ORM 江湖 曾几何时,程序员因为惧怕SQL而在开发的时候小心翼翼的写着sql,心中总是少不了恐慌,万一不小心sql语句出错,搞坏了数据库怎么办?又或者为了获取一些数据,什么内外左右连接,函数存储过程 ...
- [C++]红色波浪线是什么意思
相关资料:https://zhidao.baidu.com/question/242005953.html 问题现象:在写C++代码时,写的注释都是红色波浪线. 问题原因:波浪线表示 词语拼写错误 字 ...
- C++和Java函数传递数组参数比较
如果我想实现函数参数传递数组的业务需求,在Java中很容易实现,如下所示.因为Java有.length方法,可以获取数组的长度. public class Test { public static v ...
- c libghttp ghttp 库使用指南
libghttp是一个很好用的 http 库,能够轻松地实现同步和异步的HTTP请求 目录 [隐藏] 1 安装 2 GET示例 3 POST示例 4 相关函数 5 艺搜参考 安装 库文件下载: 在6 ...
- 在后台运行Python脚本服务
在服务器,程序都是后台运行的,当写的python脚本时,需要: 你要是想python robot.py & 是不行的,一旦用户登出,脚本就自动退出了.用at, cron也可以实现不过我发现 ...
- 数论 + 扩展欧几里得 - SGU 106. The equation
The equation Problem's Link Mean: 给你7个数,a,b,c,x1,x2,y1,y2.求满足a*x+b*y=-c的解x满足x1<=x<=x2,y满足y1< ...
- JavaBeans wiki 摘译
20161013最新提示:既然来到这了,为什么不看看 JavaBeans 官方文档学习 ? 鉴于Spring的beans包遵守JavaBean specs,有必要认真研究下JavaBean specs ...
- android 开发之hello world!
http://blog.sina.com.cn/s/blog_4e08922b0100nh6e.html http://blog.csdn.net/poechant/article/details/7 ...
- Elixir语言
Elixir是一个基于Erlang VM的函数式元编程语言(类似Ruby),通过动态语言的灵活的语法和宏能够利用Erlang建立一个并发 分布 失败冗余的高质量代码
- MathType中怎么设置字体默认颜色
MathType功能非常强大,在编辑公式时使用非常方便.利用MathType破解版不仅可以改变公式的字体和字号,也可以改变公式字体颜色.有时在编辑完成后需要对MathType公式格式全部进行修改,这时 ...