小白的java学习之路 “ 选择结构(二)”

switch 选择结构:

为什么使用switch选择结构:

switch选择结构可以更好地解决等值判断问题。

switch选择结构的四个关键字:

switch    case    default    break

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选择结构
多重分支并且条件判断是等值判断的情况

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("请输入正确的数字:");
}
}
}

原文地址:https://www.cnblogs.com/wishsaber/p/9031735.html

时间: 2024-10-12 10:29:02

小白的java学习之路 “ 选择结构(二)”的相关文章

小白的java学习之路 “ 循环结构(二)”

一.for 循环 语法: for(表达式一;表达式二;表达式三){ 循环操作 } 表达式一:参数初始化 表达式二:条件判断 表达式三:更新循环变量 执行流程: 步骤一:执行表达式一.初始化参数 步骤二:执行表达式二进行循环条件的判断 步骤三:如果循环条件为true则执行循环操作,如果为false则退出循环执行以下代码 步骤四:当循环操作执行完毕后执行表达式三,更新循环变量 表达式三执行完毕后继续执行表达式二进行循环判断,如果为真则执行循环操作,如果为假则执行以下代码,以此类推..........

java学习之switch选择结构

学编程吧java学习之switch选择结构发布了,欢迎大家通过xuebiancheng8.com来访问 前面分析了java的流程控制分为选择结构,循环结构,其中选择结构可以分为if选择结构和switch结构.下面我们来分析switch...case结构. switch...case结构也是用来实现选择结构 语法如下: switch(变量){ case 常量1: ...... break; case 常量2: ...... break; default: ...... break; } 语法太抽象

小白的java学习之路 "类的无参方法"

Java注释: //:单行注释 /**/:多行注释 /** */:JavaDoc注释语法: 访问修饰符 返回值类型 方法名(){ 方法体 } 举例: public void run(){ System.out.println(""); } public String robball(){ String ball="球"; return ball; } 方法的返回值: 1.如果方法具有返回值,方法中必须使用关键字return返回该值,返回值类型为该返回值的类型 ret

小白的java学习之路 “ 字符串”

定一个字符串可以使用string类和stringbuffer类. string类提供了大量的操作字符串的方法,常用的如下: 获得字符串的长度: length(). 比较字符串:equals(). 链接字符串:concat(). 提取字符串:substring(). 搜索字符串:indexOf(). 拆分字符串:spilt(). 常用的stringbuffer类提供的方法如下: 转换成string类型:tostring(). 链接字符串:append(). 插入字符串:intsert(). 一些案

#Java学习之路——基础阶段二(第十篇)

我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容. 前言:此随笔主要是Java基础中的基础,相信大家对这方面肯定有着自己的理解和认识,具体详解可以参照万能的baidu,有的我就一笔带过,希望在我的学习之路上能够有大牛进行指导,也有更多的小伙伴共勉. 1.Junit单元测试 我们在编程的时候会写一些功能,但是总不可能就是说没写一个功能来进行测试就要对整个项目

#Java学习之路——基础阶段二(第四篇)

我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容. 前言:此随笔主要是Java基础中的基础,相信大家对这方面肯定有着自己的理解和认识,具体详解可以参照万能的baidu,有的我就一笔带过,希望在我的学习之路上能够有大牛进行指导,也有更多的小伙伴共勉. 1.Map集合 Map集合相比Collection集合来说是以键值对形式存在的,当存入数据的时候键的值是唯一

#Java学习之路——基础阶段二(第五篇)

我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容. 前言:此随笔主要是Java基础中的基础,相信大家对这方面肯定有着自己的理解和认识,具体详解可以参照万能的baidu,有的我就一笔带过,希望在我的学习之路上能够有大牛进行指导,也有更多的小伙伴共勉. 1.异常 异常在我们平时编译的时候会有两种情况,一种是编译报错,一种是运行报错,还有一种较为严重的就是直接e

#Java学习之路——基础阶段二(第九篇)

我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容. 前言:此随笔主要是Java基础中的基础,相信大家对这方面肯定有着自己的理解和认识,具体详解可以参照万能的baidu,有的我就一笔带过,希望在我的学习之路上能够有大牛进行指导,也有更多的小伙伴共勉. 1.网络编程入门 首先要了解软件的结构有两种一种是C/S全称是Client/server 客户端和服务器之间

#Java学习之路——基础阶段二(第二篇)

我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容. 前言:此随笔主要是Java基础中的基础,相信大家对这方面肯定有着自己的理解和认识,具体详解可以参照万能的baidu,有的我就一笔带过,希望在我的学习之路上能够有大牛进行指导,也有更多的小伙伴共勉. 1.collection集合 collection集合是用来存储多个数据的相比数组来说,集合的长度是可以进行