第三次学JAVA再学不好就吃翔(part11)--基础语法之switch语句
学习笔记,仅供参考
文章目录
- JAVA基础语法
- switch语句
- if语句和switch语句的区别
JAVA基础语法
switch语句
- 格式
switch (表达式) {case 值1:语句体1;break;case 值2:语句体2;break;...default:语句体n+1;break;}
表达式可以接收的基本数据类型有:byte, short, char, int; 可以接收的引用数据类型有:枚举, String字符串.
- 执行流程
①先计算表达式的值;
②然后和case后面的匹配,如果有就执行对应的语句,否则执行default控制的语句。
- 举个例子1
class SwitchTest {public static void main(String[] args) {String gender = "母";String name = "小黄";switch (gender) {case "母":System.out.println(name + "是一只母兔子, 爱撒娇");break;case "公":System.out.println(name + "是一只公兔子, 爱打架");break;default:System.out.println(name + "是一只兔子, 不知道是啥性别");break;}}
}
输出:
小黄是一只母兔子, 爱撒娇
- 注意事项
①case后面只能是常量,不能是变量,而且,多个case后面不能出现相同的值;
②default可以省略,但是不建议省略,因为它的作用是对不正确的情况给出提示;
③break在最后一个可以省略,其他最好不要省略,否则会出现case穿透现象,建议不要省略;
④default不一定要放在最后,它可以在任意位置,但建议在最后;
⑤switch语句遇到break或者执行到switch的右大括号就可以结束了。
- 举个例子2(case穿透现象)
class SwitchTest {public static void main(String[] args) {String gender = "母";String name = "小黄";switch (gender) {case "母":System.out.println(name + "是一只母兔子, 爱撒娇");//break;case "公":System.out.println(name + "是一只公兔子, 爱打架");break;default:System.out.println(name + "是一只兔子, 不知道是啥性别");break;}}
}
输出:
小黄是一只母兔子, 爱撒娇
小黄是一只公兔子, 爱打架
if语句和switch语句的区别
switch建议判断固定值的时候用,if建议判断区间或范围的时候用.
- 举个例子
分别使用switch语句和if语句实现键盘录入月份,输出对应的季节的需求
switch语句
import java.util.Scanner;class SwitchTest {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("请输入月份");int month = sc.nextInt();switch (month) {case 3:case 4:case 5:System.out.println(month + "月是春季");break;case 6:case 7:case 8:System.out.println(month + "月是夏季");break;case 9:case 10:case 11:System.out.println(month + "月是秋季");break;case 12:case 1:case 2:System.out.println(month + "月是冬季");break;default:System.out.println("对不起没有对应的季节");break;}}
}
输出:
请输入月份
5
5月是春季
if语句
import java.util.Scanner;class SwitchTest {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("请输入月份");int month = sc.nextInt();if (month > 12 || month < 1) {System.out.println("对不起没有对应的季节");}else if (month >= 3 && month <= 5) {System.out.println(month + "月是春季");}else if (month >= 6 && month <= 8) {System.out.println(month + "月是夏季");}else if (month >= 9 && month <= 11) {System.out.println(month + "月是秋季");}else {System.out.println(month + "月是冬季");}}
}
输出:
请输入月份
6
6月是夏季
第三次学JAVA再学不好就吃翔(part11)--基础语法之switch语句相关推荐
- 第三次学JAVA再学不好就吃翔(part14)--基础语法之循环语句注意事项
学习笔记,仅供参考 文章目录 JAVA基础语法 for, while, do...while的区别 死循环 循环嵌套 JAVA基础语法 for, while, do-while的区别 do-while ...
- 第三次学JAVA再学不好就吃翔(part10)--基础语法之if语句
学习笔记,仅供参考 文章目录 JAVA基础语法 if语句 if语句格式1 if语句格式2 if语句的格式与三元运算符的相互转换 if语句格式3 JAVA基础语法 if语句 if语句格式1 if(比较表 ...
- 第三次学JAVA再学不好就吃翔(part12)--基础语法之for循环语句
学习笔记,仅供参考 JAVA基础语法 for循环语句 格式 for(初始化表达式;条件表达式;循环后的操作表达式) {循环体;} 执行流程 ①执行初始化表达式: ②执行条件表达式,看其返回值是true ...
- 第三次学JAVA再学不好就吃翔(part107)--字符流的拷贝
学习笔记,仅供参考,有错必纠 文章目录 IO流 字符流的拷贝 拷贝纯文本文件 注意事项 自定义字符数组的拷贝 IO流 字符流的拷贝 拷贝纯文本文件 zzz.txt: 安徽财经大学 JAVA代码: pa ...
- 第三次学JAVA再学不好就吃翔(part7)--基础语法之运算符
学习笔记,仅供参考 文章目录 JAVA基础语法 运算符 算数运算符 算术运算符 ++和-- 赋值运算符 关系运算符 JAVA基础语法 运算符 什么是运算符 就是对常量和变量进行操作的符号. 运算符的分 ...
- 第三次学JAVA再学不好就吃翔(part5)--基础语法之数据类型转换
学习笔记,仅供参考 文章目录 JAVA基础语法 数据类型转换之隐式转换 数据类型转换之强制转换 JAVA基础语法 数据类型转换之隐式转换 byte类型转换为int类型 class TypeConver ...
- 第三次学JAVA再学不好就吃翔(part19)--二维数组
学习笔记,仅供参考 文章目录 JAVA基础语法 二维数组 二维数组的格式 二维数组的遍历 二维数组的求和 基本数据类型和引用数据类型的参数传递问题 JAVA基础语法 二维数组 二维数组的格式 格式1 ...
- 第三次学JAVA再学不好就吃翔(part18)--数组操作
学习笔记,仅供参考 文章目录 JAVA基础语法 数组操作 索引越界 空指针异常 遍历 获取数组中最大值 反转 根据元素找索引 JAVA基础语法 数组操作 索引越界 我们先看下面这段代码: class ...
- 第三次学JAVA再学不好就吃翔(part17)--数组
学习笔记,仅供参考 文章目录 JAVA基础语法 数组概述 数组的初始化 内存分配 绘制内存图 JAVA基础语法 数组概述 数组概念 数组是存储同一种数据类型多个元素的集合,也可以看成是一个容器.数组既 ...
最新文章
- 复旦大学计算机专业直博,上海复旦大学计算机科学技术学院2016博士招生选拔办法...
- Windows10远程访问Jupyter notebook
- ebs查看服务状态_Oracle EBS - 工单状态
- YOLOv5-Lite 使用笔记
- AngularJS API
- leetcode算法题--最大的以 1 为边界的正方形★
- IaaS,PaaS,SaaS 的区别
- 关于PIP 总结和记忆巩固
- 2017腾讯编程题----素数对
- NOIP2015 D1 解题报告
- spring学习(45):util名称空间注入
- sudo apt-get nmap 报错锁占用
- 《学习javascript数据结构与算法》——第六章:集合
- 择师论(怎么有效的向别人学习)
- 百度SEO之-权重与排名(含工具网站)
- 博世 BMI160 6轴传感器 数据手册datasheet
- 基于Pandas的股票数据分析
- android,adb相关
- Linux中gcc的常用命令
- python两列时间间隔计算器_计算两列之间的Pandas DataFrame时间差异(以小时和分钟为单位)...