JAVA的选择结构(二)
1.switch选择结构:
语法:
switch (key) {
case value:
break;
case value:
break;
case value:
break;
default:
break;
}
根据key去匹配value的值,如果value的值跟key相同则走case块中的代码,然后执行完毕后结束,如果所有case块都不匹配则会走default
如果想让case块执行完毕后跳出选择结构则在case块结尾处添加break
案例:
韩嫣参加计算机编程大赛
如果获得第一名,将参加麻省理工大学组织的1个月夏令营
如果获得第二名,将奖励惠普笔记本电脑一部
如果获得第三名,将奖励移动硬盘一个
否则,不给任何奖励
public class Demo01 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("请输入名次:");
char count = input.next().charAt(0);
/*
*
* 韩嫣参加计算机编程大赛 如果获得第一名,将参加麻省理工大学组织的1个月夏令营 如果获得第二名,将奖励惠普笔记本电脑一部
* 如果获得第三名,将奖励移动硬盘一个 否则,不给任何奖励
*/
switch (count) {
case '一':
System.out.println("参加麻省理工大学组织的1个月夏令营 ");
break;
case '二':
System.out.println("奖励惠普笔记本电脑一部");
break;
case '三':
System.out.println("奖励移动硬盘一个");
break;
default:
System.out.println("没有奖励!");
break;
}
}
}
2.注意问题:
1.case后面的常量必须各不相同
2.如果需要每个case执行完后跳出,在每个case后不要忘记写break;
3.default块顺序可以变动,但要注意其执行顺序。通常,default块放在末尾,也可以省略
3.多重if选择结构和switch比对
相同点:
都是用来处理多分支条件的结构
不同点:
switch选择结构
只能处理等值条件判断的情况
多重if选择结构
没有switch选择结构的限制,特别适合某个变量处于某个连续区间时的情况
4.总结选择结构:
if选择结构
基本if选择结构: 处理单一或组合条件的情况
if-else选择结构:处理简单的条件分支情况
多重if选择结构:处理复杂的条件分支情况
嵌套if选择结构:用于较为复杂的流程控制
switch选择结构
多重分支并且条件判断是等值判断的情况
5.使用hasNextInt()解决用户从控制台输入为非整型问题
public class Demo02 {
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
System.out.println("欢迎光临我行我素管理系统");
System.out.println("\t\t1.登录系统");
System.out.println("\t\t2.退出");
System.out.println("请选择:");
if(input.hasNextInt())
{
int number=input.nextInt();
switch (number) {
case 1:
System.out.println("欢迎登录系统!!");
break;
case 2:
System.out.println("您退出了系统!!");
break;
default:
System.out.println("没有输入选项");
break;
}
}else{
System.out.println("请输入正确的数字:");
}
}
}
案例:1.韩嫣参加计算机编程大赛
如果获得第一名,将参加麻省理工大学组织的1个月夏令营
如果获得第二名,将奖励惠普笔记本电脑一部
如果获得第三名,将奖励移动硬盘一个
否则,不给任何奖励
public class Demo01 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("请输入名次:");
char count = input.next().charAt(0);
/*
*
* 韩嫣参加计算机编程大赛 如果获得第一名,将参加麻省理工大学组织的1个月夏令营 如果获得第二名,将奖励惠普笔记本电脑一部
* 如果获得第三名,将奖励移动硬盘一个 否则,不给任何奖励
*/
switch (count) {
case '一':
System.out.println("参加麻省理工大学组织的1个月夏令营 ");
break;
case '二':
System.out.println("奖励惠普笔记本电脑一部");
break;
case '三':
System.out.println("奖励移动硬盘一个");
break;
default:
System.out.println("没有奖励!");
break;
}
}
}
2. public class Demo02 {
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
System.out.println("欢迎光临我行我素管理系统");
System.out.println("\t\t1.登录系统");
System.out.println("\t\t2.退出");
System.out.println("请选择:");
if(input.hasNextInt())
{
int number=input.nextInt();
switch (number) {
case 1:
System.out.println("欢迎登录系统!!");
break;
case 2:
System.out.println("您退出了系统!!");
break;
default:
System.out.println("没有输入选项");
break;
}
}else{
System.out.println("请输入正确的数字:");
}
}
}
JAVA的选择结构(二)的更多相关文章
- JAVA的选择结构
1.基本选择结构if 案例:如果Java考试成绩大于98分则奖励MP4 public class Demo02 { public static void main ...
- java基础 ----- 选择结构
--------- 流程控制 ------ 流程图 ------ 基本的 if 选择结构 import java.util.Scanner; public class GetPr ...
- java4选择结构 二
public class jh_01_为什么使用switch选择结构 { /* * 韩嫣参加计算机编程大赛 * 如果获得第一名,将参加麻省理工大学组织的1个月夏令营 * 如果获得第二名,将奖励惠普笔记 ...
- 选择结构二switch选择结构
在上一章节我们讲解了if选择结构 本章我们学习 switch选择结构 还要知道if选择结构和switch结构的区别 为什么学习了if选择结构还要学习switch选择结构 以及 两种选择结构的运用 ...
- Java流程控制:选择结构
一.选择结构 选择结构用于判断给定的条件,根据判断的结果来控制程序的流程. Java中选择结构的语法主要分为'if...else'语句和'switch...case'语句. Java中选择结构语句在语 ...
- C语言程序设计第四次作业-选择结构
(一)改错题 输出三角形的面积和周长,输入三角形的三条边a.b.c,如果能构成一个三角形,输出面积area和周长perimeter(保留2位小数):否则,输出"These sides do ...
- Java中的选择结构(二)
选择结构(二) 学习本章会用到的单词: case:实例,情形,情况 switch:转换,切换,开关 default:系统默认值,违约,预设.缺省 exit:出口,通道,退出 consume:消耗,耗费 ...
- 小白的java学习之路 “ 选择结构(二)”
switch 选择结构: 为什么使用switch选择结构: switch选择结构可以更好地解决等值判断问题. switch选择结构的四个关键字: switch case default ...
- Java语法基础(三)----选择结构的if语句、switch语句
[前言] 流程控制语句: 在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的.也就是说程序的流程对运行结果有直接的影响.所以,我们必须清楚每条语句的执行流程.而且,很多时候我们要通过 ...
随机推荐
- 1010 Radix:猥琐的测试数据
谨以此题纪念边界测试数据浪费了我多少时间:https://pintia.cn/problem-sets/994805342720868352/problems/994805507225665536 # ...
- [LOJ 6485]LJJ学二项式定理(单位根反演)
也许更好的阅读体验 \(\mathcal{Description}\) 原题链接 \(T\)组询问,每次给\(n,s,a_0,a_1,a_2,a_3\)求 \(\begin{aligned}\left ...
- Codeforces Round #563 Div. 2
A:显然排序即可. #include<bits/stdc++.h> using namespace std; #define ll long long #define inf 100000 ...
- Java开发Hbase示例
Java开发Hbase示例 使用Hbase操作数据 package com.sunteng.clickidc.test; import java.io.IOException; import java ...
- Asp.Net Core 使用 MediatR
Asp.Net Core 使用 MediatR 项目中使用了CQRS读写分离,增删改 的地方使用了 MediatR ,将进程内消息的发送和处理进行解耦.于是便有了这篇文章,整理并记录一下自己的学习.遇 ...
- VBA分别使用MSXML的DOM属性和XPATH进行网页爬虫
本文要重点介绍的是VBA中的XmlHttp对象(MSXML2.XMLHTTP或MSXML.XMLHTTP),它可以向http服务器发送请求并使用微软XML文档对象模型Microsoft XML Doc ...
- nginx Proxy Cache 配置
总结一下 proxy cache 设置的常用指令及使用方法: proxy_cache proxy_cache zone | off 配置一块公用的内存区域的名称,该区域可以存放缓存的索引数据.注意:z ...
- 【已解决】极速迅雷win10闪退解决方案
[已解决]极速迅雷win10闪退解决方案 本文作者:天析 作者邮箱:2200475850@qq.com 发布时间: Wed, 17 Jul 2019 18:01:00 +0800 在吾爱下载了个极速迅 ...
- 安卓开发之生成cache目录和files目录
package com.lidaochen.test; import android.os.Bundle; import android.support.v7.app.AppCompatActivit ...
- linux IPC简单学习
Posix和system v区别 所谓的IPC(进程间通信)指的是消息队列,共享内存,信号量3种机制合并起来,当然,这是个狭义的概念,只包含这三种.IPC又可以分为system v进程间通信和posi ...