java选择语句中switch的用法(详细介绍)
一、什么时候用switch?
在java中控制流程语句是由选择语句、循环语句、跳转语句构成。选择语句包括 if 和 switch,在过多的使用 if 语句嵌套会使程序很难阅读,这时利用 switch 语句可以有效的处理多重条件并是程序的可读性增加。
二、switch语句格式
switch(表达式){
case 表达式常量1:
语句1;
[ break;] // [ ] 表示可选
case 表达式常量2:
语句2;
[ break;]
......
case 表达式常量n:
语句n;
[ break;]
[default:语句n+1;]
}
switch 语句遵从规则:
①表达式必须计算出一个 char 、byte、short、int、string 类型等数据,并且它必须用括号括住。
②值1,...,值N 必须与表达式的值具有相同的数据类型,当表达式的值与 case 语句的值相匹配时,执行该 case语句中的语句(每个 case 语句都顺序执行)
③ 关键字break是可选的,break 语句终止整个 switch 语句。若 break 语句不存在,下一个case 语句将被执行。
④ 默认情况(default)是可选的,它用来指定情况都不为真时的操作,默认情况总是出现在switch 语句块的最后。
三、switch 语句实例
编写代码从键盘输入年月日,运行输出这是这年的第几天(方法多种,最简单用递归,这里用switch选择语句实现)
import java.util.Scanner;public class test_3 {public static void main(String[] args) {int sumDays = 0;Scanner scan = new Scanner(System.in);System.out.println("请输入年份:");int year = scan.nextInt();System.out.println("请输入月:(1-12)");int mouth = scan.nextInt();System.out.println("请输入日:(1-31)");int day = scan.nextInt();switch (mouth){case 12:sumDays += 30;case 11:sumDays += 31;case 10:sumDays += 30;case 9:sumDays += 31;case 8:sumDays += 31;case 7:sumDays += 30;case 6:sumDays += 31;//6月24日 31+29+31+30+31+24case 5:sumDays += 30;case 4:sumDays += 31;case 3:if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0){sumDays += 29;}else {sumDays += 28;}//sumDays += 29;case 2:sumDays += 31;case 1:sumDays += day;System.out.println(year + "年" + mouth + "月" + day + "日是" + year +"年的第" +sumDays + "天");}}
}
运行结果
本题来源于尚硅谷宋红康老师的javase基础教程,视频讲解:尚硅谷Java零基础入门教程(含百道Java真题,2万多行Java代码实战)_哔哩哔哩_bilibili
java选择语句中switch的用法(详细介绍)相关推荐
- mysql 中show 命令用法详细介绍 mysql过程(procedure)的使用
a. show tables或show tables from database_name; -- 显示当前数据库中所有表的名称 b. show databases; -- 显示mysql 中所有数据 ...
- java的object_Java中的Object类详细介绍
理论上Object类是所有类的父类,即直接或间接的继承java.lang.Object类.由于所有的类都继承在Object类,因此省略了extends Object关键字. 该类中主要有以下方法: t ...
- Java 中 switch 的用法
Java 中 switch 的用法 1.switch 中的表达式的数据的数据类型为 byte, short, int, char, String(jdk > 1.7支持 String 类型) 2 ...
- 【Java选择语句(if,else,switch)】
Java选择语句 选择结构包括if语句与switch语句 if语句分为:if:if,else:if,else if ,else三种结构. if语句 if结构 格式: if(关系表达式){语句体 } 执 ...
- IsNull 和 SQL语句中CASE WHEN用法
[转]IsNull 和 SQL语句中CASE WHEN用法收藏 [转]IsNull 和 SQL语句中CASE WHEN用法 1.ISNULL 使用指定的替换值替换 NULL. ...
- oracle删除唯一索引sql语句_高级SQL之在选择语句中使用更新和删除
点击蓝字关注我吧 [本文详细介绍了数据库中在选择语句中使用更新和删除的方法,欢迎读者朋友们阅读.转发和收藏!] 1 基本概念 1.1 SQL UPDATE 语句 Update 语句 Update 语句 ...
- python里else中文意思_Python循环语句中else的用法总结
前言 本文讨论Python的for-else和while-else等语法,这些是Python中最不常用.最为误解的语法特性之一. Python中的for.while等循环都有一个可选的else分支(类 ...
- Java条件语句之 switch
Java条件语句之 switch 当需要对选项进行等值判断时,使用 switch 语句更加简洁明了.例如:根据考试的名次,给予前 4 名不同的奖品.第一名,奖励笔记本一台:第二名,奖励 IPAD 2 ...
- c语言switch中用ifelse,初学者求问:用if单分支选择语句替换switch语句?if.else呢...
菜鸟求问:用if单分支选择语句替换switch语句?if...else呢? 主要是关于default情况的处理,代码如下: /* Fig. 4.7: fig04_07.c Counting lette ...
最新文章
- 看完这篇还不懂Redis的RDB持久化,你们来打我!
- clistctrl控件最后插入在后面_用图表控件做一个简单的员工信息查询系统
- java的知识点13——多态、对象的转型(casting)、final关键字、抽象方法和抽象类、接口的作用、如何定义和使用接口?、接口的多继承、面向接口编程
- 聚类算法(part1)--DBSCAN
- HUD4035Maze
- [css] absolute的containing block(容器块)计算方式和正常流有什么区别?
- WCF服务编程设计规范(9):中文、中英文对照、英文版资料共享下载
- [译] 用 Redis 和 Python 构建一个共享单车的 app
- python关键字参数顺序_位置参数和关键字参数的求值顺序
- 程序包androidx.support.annotation不存在/import androidx.v7.app.AppCompatActivity;报错
- 计算机考研复试之操作系统
- vue中引入字体无效(记录)
- MTCNN人脸检测与人脸对齐
- 39岁阿里P9提前退休,资产1.5亿,北京4套房!职场人的离职悲喜各不相同
- 拦截QT关闭窗口的CloseEvent()解析
- Linux在安装文件时,yum基本配置出现错误
- 五年级计算机课教什么东西,五年级信息技术下教案
- 硬盘突然变raw格式_硬盘变成raw格式解决办法
- 如何评价 2021 考研政治题,难度如何?
- 分数拆分(简单数学)