一、什么时候用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的用法(详细介绍)相关推荐

  1. mysql 中show 命令用法详细介绍 mysql过程(procedure)的使用

    a. show tables或show tables from database_name; -- 显示当前数据库中所有表的名称 b. show databases; -- 显示mysql 中所有数据 ...

  2. java的object_Java中的Object类详细介绍

    理论上Object类是所有类的父类,即直接或间接的继承java.lang.Object类.由于所有的类都继承在Object类,因此省略了extends Object关键字. 该类中主要有以下方法: t ...

  3. Java 中 switch 的用法

    Java 中 switch 的用法 1.switch 中的表达式的数据的数据类型为 byte, short, int, char, String(jdk > 1.7支持 String 类型) 2 ...

  4. 【Java选择语句(if,else,switch)】

    Java选择语句 选择结构包括if语句与switch语句 if语句分为:if:if,else:if,else if ,else三种结构. if语句 if结构 格式: if(关系表达式){语句体 } 执 ...

  5. IsNull 和 SQL语句中CASE WHEN用法

    [转]IsNull 和 SQL语句中CASE WHEN用法收藏   [转]IsNull 和 SQL语句中CASE WHEN用法 1.ISNULL     使用指定的替换值替换   NULL.      ...

  6. oracle删除唯一索引sql语句_高级SQL之在选择语句中使用更新和删除

    点击蓝字关注我吧 [本文详细介绍了数据库中在选择语句中使用更新和删除的方法,欢迎读者朋友们阅读.转发和收藏!] 1 基本概念 1.1 SQL UPDATE 语句 Update 语句 Update 语句 ...

  7. python里else中文意思_Python循环语句中else的用法总结

    前言 本文讨论Python的for-else和while-else等语法,这些是Python中最不常用.最为误解的语法特性之一. Python中的for.while等循环都有一个可选的else分支(类 ...

  8. Java条件语句之 switch

    Java条件语句之 switch 当需要对选项进行等值判断时,使用 switch 语句更加简洁明了.例如:根据考试的名次,给予前 4 名不同的奖品.第一名,奖励笔记本一台:第二名,奖励 IPAD 2 ...

  9. c语言switch中用ifelse,初学者求问:用if单分支选择语句替换switch语句?if.else呢...

    菜鸟求问:用if单分支选择语句替换switch语句?if...else呢? 主要是关于default情况的处理,代码如下: /* Fig. 4.7: fig04_07.c Counting lette ...

最新文章

  1. 看完这篇还不懂Redis的RDB持久化,你们来打我!
  2. clistctrl控件最后插入在后面_用图表控件做一个简单的员工信息查询系统
  3. java的知识点13——多态、对象的转型(casting)、final关键字、抽象方法和抽象类、接口的作用、如何定义和使用接口?、接口的多继承、面向接口编程
  4. 聚类算法(part1)--DBSCAN
  5. HUD4035Maze
  6. [css] absolute的containing block(容器块)计算方式和正常流有什么区别?
  7. WCF服务编程设计规范(9):中文、中英文对照、英文版资料共享下载
  8. [译] 用 Redis 和 Python 构建一个共享单车的 app
  9. python关键字参数顺序_位置参数和关键字参数的求值顺序
  10. 程序包androidx.support.annotation不存在/import androidx.v7.app.AppCompatActivity;报错
  11. 计算机考研复试之操作系统
  12. vue中引入字体无效(记录)
  13. MTCNN人脸检测与人脸对齐
  14. 39岁阿里P9提前退休,资产1.5亿,北京4套房!职场人的离职悲喜各不相同
  15. 拦截QT关闭窗口的CloseEvent()解析
  16. Linux在安装文件时,yum基本配置出现错误
  17. 五年级计算机课教什么东西,五年级信息技术下教案
  18. 硬盘突然变raw格式_硬盘变成raw格式解决办法
  19. 如何评价 2021 考研政治题,难度如何?
  20. 分数拆分(简单数学)

热门文章

  1. VOT 2015 Benchmark 使用教程
  2. 如何使用远程桌面连接云服务器 (以阿里云为例)
  3. H3C iMC 存在远程命令执行漏洞
  4. 2008年度回顾:决胜路由应用时代
  5. AIGC能否助力三六零实现“戴维斯双击”?
  6. 美迪网站推广教你怎样写原创文章
  7. Linux更改本机ip
  8. python sort多条件排序
  9. red hat 系统下载
  10. 电商类微信平台推广方法有哪些?