iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Java基础之switch分支结构详解
  • 715
分享到

Java基础之switch分支结构详解

2024-04-02 19:04:59 715人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

目录一、基本语法二、流程图三、快速入门四、switch 注意事项和细节讨论五、switch 课堂练习六、switch 和 if 的比较一、基本语法 二、流程图 1.画出 swtic

一、基本语法

在这里插入图片描述

二、流程图

1.画出 swtich 出流程

2.案例说明流程图

在这里插入图片描述 

三、快速入门

  • 案例:Switch01.java

请编写一个程序,该程序可以接收一个字符,比如:a,b,c,d,e,f,g

a 表示星期一,b 表示星期二 …
根据用户的输入显示相应的信息.要求使用 switch 语句完成
代码:



	Scanner myScanner = new Scanner(System.in);
	System.out.println("请输入一个字符(a-g)");
	char c1 = myScanner.next().charAt(0);//
	//在java中,只要是有值返回,就是一个表达式
	switch(c1) {
		case 'a' : 
			System.out.println("今天星期一,猴子穿新衣");
			break;
		case 'b' : 
			System.out.println("今天星期二,猴子当小二");
			break;
		case 'c' : 
			System.out.println("今天星期三,猴子爬雪山..");
			break;
		//.....
		default:
			System.out.println("你输入的字符不正确,没有匹配的");
	
	}
	
	System.out.println("退出了switch ,继续执行程序");

在这里插入图片描述

四、switch 注意事项和细节讨论

在这里插入图片描述


//细节1
	//表达式数据类型,应和case 后的常量类型一致,
	//或者是可以自动转成可以相互比较的类型,比如输入的是字符,而常量是 int
	
	//细节2
	//switch(表达式)中表达式的返回值必须是:
	//(byte,short,int,char,enum[枚举],String)

	//细节3
	//case子句中的值必须是常量(1,'a')或者是常量表达式,而不能是变量
	//
	//细节4
	//default子句是可选的,当没有匹配的case时,执行default
	//如果没有default 子句,有没有匹配任何常量,则没有输出
	//
	//细节5
	//break语句用来在执行完一个case分支后使程序跳出switch语句块;
	//如果没有写break,程序会顺序执行到switch结尾,除非执行到break
	char c = 'b';
	char c2 = 'c';
	switch(c) {
		case 'a' :
			System.out.println("ok1");
			break;
		case 'b'  :
			System.out.println("ok2");
			break;
		default :
			System.out.println("ok3");
	}

	System.out.println("退出了switch,继续执行..");

在这里插入图片描述

把上面的case b中的 break 都去掉,会都执行下面输出语句,不会跳出来。

在这里插入图片描述 

五、switch 课堂练习

SwitchExercise.java

1.使用 switch 把小写类型的 char 型转为大写(键盘输入)。只转换 a, b, c, d, e. 其它的输出 “other”。


//使用 switch 把小写类型的 
	//char型转为大写(键盘输入)。只转换 a->A, b->B, c, d, e. 
	//其它的输出 "other"。
	Scanner sc = new Scanner(System.in);
	System.out.println("请输入a-e");
	char c1 = sc.next().charAt(0);
	switch(c1) {
		case 'a' :
			System.out.println("A");
			break;
		case 'b' :
			System.out.println("B");
			break;
		case 'c' :
			System.out.println("C");
			break;
		case 'd' :
			System.out.println("D");
			break;
		case 'e' :
			System.out.println("E");
			break;
		default :
			System.out.println("你的输入有误~");
	
	}

在这里插入图片描述

2.对学生成绩大于 60 分的,输出"合格"。低于 60 分的,输出"不合格"。(注:输入的成绩不能大于 100), 提示: 成绩/60


//对学生成绩大于60分的,输出"合格"。低于60分的,
	//输出"不合格"。(注:输入的成绩不能大于100), 提示 成绩/60
	//思路分析
	//1. 这道题,可以使用 分支来完成, 但是要求使用switch
	//2. 这里我们需要进行一个转换, 编程思路 : 
	//   如果成绩在 [60,100] , (int)(成绩/60) = 1 
	//   如果成绩在 [0,60) , (int)(成绩/60) = 0 
	
	//代码实现
	Scanner sc = new Scanner(System.in);
	System.out.println("请输入成绩在0-100之间:");
	double score = sc.nextDouble();
	if (score >= 0 && score<=100) {
	    switch ((int) (score / 60)) {
	        case 0:
	            System.out.println("不合格");
	            break;
	        case 1:
	            System.out.println("合格");
	    }
	}else{
	    System.out.println("请输入成绩在0-100之间");
	}

在这里插入图片描述

3.根据用于指定月份,打印该月份所属的季节。3,4,5 春季 6,7,8 夏季 9,10,11 秋季 12, 1, 2 冬季 [课堂练习, 提示: 使用穿透 ]


//根据用于指定月份,
	//打印该月份所属的季节。
	//3,4,5 春季 6,7,8 夏季  9,10,11 秋季 12, 1, 2 冬季 
	//[课堂练习, 提示 使用穿透 ] 
	//
	//思路分析
	//1. 创建Scanner对象, 接收用户输入
	//2. 使用 int month 接收
	//3. 使用switch 来匹配 ,使用穿透来完成,比较简洁
	
	Scanner myScanner = new Scanner(System.in);
	System.out.println("输入月份");
	int month = myScanner.nextInt();
	switch(month) {
		case 3:
		case 4:
		case 5: 
			System.out.println("这是春季");
			break;
		case 6:
		case 7:
		case 8: 
			System.out.println("这是夏季");
			break;
		case 9:
		case 10:
		case 11: 
			System.out.println("这是秋季");
			break;
		case 1:
		case 2:
		case 12: 
			System.out.println("这是冬季");
			break;
		default :
			System.out.println("你输入的月份不对(1-12)");
	}

在这里插入图片描述

六、switch 和 if 的比较

如果判断的具体数值不多,而且符合 byte、 short 、int、 char, enum[枚举], String 这 6 种类型。虽然两个语句都可以使用,建议使用 swtich 语句。其他情况:对区间判断,对结果为 boolean 类型判断,使用 ifif 的使用范围更广。

到此这篇关于Java基础之switch分支结构详解的文章就介绍到这了,更多相关Java switch分支结构内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Java基础之switch分支结构详解

本文链接: https://www.lsjlt.com/news/125524.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Java基础之switch分支结构详解
    目录一、基本语法二、流程图三、快速入门四、switch 注意事项和细节讨论五、switch 课堂练习六、switch 和 if 的比较一、基本语法 二、流程图 1.画出 swtic...
    99+
    2024-04-02
  • Python基础之数据结构详解
    目录一、列表1.1 列表更新元素1.2 列表增加元素1.3 列表删除元素1.4 列表的其他操作二、元组2.1 删除元组2.2 元组的其他操作三、字典3.1 字典删除元素3.2 字典的...
    99+
    2024-04-02
  • Java基础总结之Thymeleaf详解
    目录一、Thymeleaf语法1.1 变量表达式${…}1.2 选择变量表达式*{…}1.3 消息表达式 #{…}1.4 链接表达式 @{…}1.5 片段表达式 ~{…}二、基本使用...
    99+
    2024-04-02
  • 如何在Java中使用switch分支结构
    如何在Java中使用switch分支结构?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。Java的特点有哪些Java的特点有哪些1.Java语言作为静态面向对象编...
    99+
    2023-06-15
  • Java 基础 之 分支语句
    转载于 : http://www.verejava.com/id=16992614948219 import java.util.Scanner;public class Statement...
    99+
    2023-06-02
  • Java基础之选择结构与循环结构
    目录一、选择结构1.1基本if选择结构1.1.1语法1.1.2执行流程1.1.3代码展示1.1.4运行结果1.2平衡if选择结构1.2.1语法1.2.2执行流程1.2.3代码展示1....
    99+
    2024-04-02
  • Python基础教程之控制结构详解
    目录0. 学习目标1. 代码块与缩进2. 条件语句2.1 if 语句2.2 if 语句的嵌套2.3 断言3. 循环3.1 while 循环3.2 for 循环3.3 中断循环4. 控...
    99+
    2024-04-02
  • Python基础必备之语法结构详解
    目录Python 语句续行隐式续行的方式显式续行的方式每行多语句注释空白字符空格作为缩进Python 语句 语句是 Python 解释器解析和处理的基本指令单元。通常解释器按顺序一个...
    99+
    2024-04-02
  • Python 分支结构详解
    目录一、分支结构二、单分支结构三、双分支结构四、多分支结构五、嵌套分支结构六、三元表达式七、条件测试一、分支结构 为了限定用户正规操作,也为了更好的控制程序的逻辑,必须在适当时引入条...
    99+
    2024-04-02
  • Git基础学习之分支基本操作详解
    目录1、创建分支(1)创建分支(2)图示理解2、查看分支列表3、分支切换4、查看所有分支的最后一个提交5、删除分支1、创建分支 (1)创建分支 Git 是怎么创建新分支的呢? 很简单...
    99+
    2022-11-13
    Git分支基本操作 Git分支操作 Git基础学习
  • Java基础学习之构造方法详解
    目录一、构造方法概述二、构造方法的注意事项三、标准类制作一、构造方法概述 构造方法是一种特殊的方法 作用:创建对象Student stu = new Student(); 格式: p...
    99+
    2024-04-02
  • Java基础之StringBuffer详解
    目录一、前言二、用法三、结果四、长度 容量五、IStringBuffer接口六、value和capacity一、前言 StringBuffer是可变长的字符串 1.append 追加...
    99+
    2024-04-02
  • Java基础之ClassLoader详解
    目录一、ClassLoader简介二、内置的CLassLoader的类型三、BootstrapClassLoader四、ExtClassLoader五、AppClassLoader六...
    99+
    2024-04-02
  • Java基础之Maven详解
    目录一、Maven环境的搭建1. 为什么要学习Maven?2. Maven项目架构管理工具3. 下载安装Maven4. 配置环境变量5. 阿里云...
    99+
    2024-04-02
  • Java基础之TreeMap详解
    目录一、写在前面二、定义三、成员变量四、内部类五、构造器六、成员方法一、写在前面 TreeMap的底层数据结构是红黑树,且TreeMap可以实现集合元素的排序。 所以TreeMap...
    99+
    2024-04-02
  • Java基础之FastJson详解
    目录一、fastJson将json格式字符串转化成List集合二、fastJson将json格式字符串转化成对象三、FastJson将对象或集合转化成json格式字符串四、FastJ...
    99+
    2024-04-02
  • C++LeetCode数据结构基础详解
    目录一、只出现一次的数字二、多数元素三、三数之和总结一、只出现一次的数字 遍历一遍数组利用异或的特性来实现(相同为0,相异为1 ) 例如[4,1,2,1,2] 4和1异或为5 5和...
    99+
    2024-04-02
  • Java分支结构程序设计实例详解
    1.从键盘输入三个整数分别存入num1,num2,num3,对他们进行排序,并且从小到大输出。 import java.util.Scanner; public class Comp...
    99+
    2024-04-02
  • Java基础之三大控制流程结构
    目录一、前言二、顺序结构三、选择结构3.1 if选择结构3.2 switch选择结构四、循环结构4.1 While循环4.2 DoWhile循环4.3 For循环一、前言 在代码的控...
    99+
    2024-04-02
  • Java数据结构之图的基础概念和数据模型详解
    目录图的实际应用图的定义及分类图的相关术语图的存储结构邻接矩阵邻接表图的实现图的API设计代码实现图的实际应用 在现实生活中,有许多应用场景会包含很多点以及点点之间的连接,而这些应用...
    99+
    2022-11-13
    Java数据结构 图 Java 图
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作