java switch基础介绍及具体使用方法
switch的case语句可以处理int,short,byte,char类型的值,但是不能处理long,String等类型。
java switch基础语法
witch(表达式){
case 表达式常量1:语句1;
break;
case 表达式常量2:语句2;
break;
......
case 表达式常量n:语句n;
break;
[default:语句n+1;]
}
其中,一个case表达式常量成为标号,代表一个case分支的入口。switch语句在运行时首先计算switch圆括号中“表达式”的值,这个值必须是整型或字符型的,同时后面各个case表达式常量的值的类型应与switch圆括号中“表达式”的值类型一致。一个case语句代表一个制定操作,然后转向结构出口。default子句是可选的,当表达式的值与case表达式常量的值都不匹配时,就运行default子句,转向结构出口。
java里switch的执行顺序
switch表达式的值决定选择哪个case分支,如果找不到相应的分支,就直接从”default” 开始输出。
当程序执行一条case语句后,因为例子中的case分支中没有break 和return语句,所以程序会执行紧接于其后的语句。
java switch语句注意事项
case B:C;case是常量表达式,也就是说B的取值只能是常量(需要定义一个final型的常量,后面会详细介绍原因)或者int、byte、short、char(比如1、2、3、200000000000(注意了这是整型)),如果你需要在此处写一个表达式或者变量,那么就要加上单引号; case后的语句可以不用大括号,就是C不需要用大括号包裹着;
default就是如果没有符合的case就执行它,default并不是必须的。
实例:java 用switch语句解决月薪范围问题
public class SwitchDemo {public static void main(String[] args) {int month = 8;String monthString;switch (month) {case 1: monthString = "January";break;case 2: monthString = "February";break;case 3: monthString = "March";break;case 4: monthString = "April";break;case 5: monthString = "May";break;case 6: monthString = "June";break;case 7: monthString = "July";break;case 8: monthString = "August";break;case 9: monthString = "September";break;case 10: monthString = "October";break;case 11: monthString = "November";break;case 12: monthString = "December";break;default: monthString = "Invalid month";break;}System.out.println(monthString);}
}
Java中switch和if语句的区别
switch和if语句都是Java的选择语句,这两种语句都是允许在程序运行时控制程序的执行过程。
switch和if-else相比,由于使用了Binary Tree算法,绝大部分情况下switch会快一点,除非是if-else的第一个条件就为true。
编译器编译switch与编译if…else…不同。不管有多少case,都直接跳转,不需逐个比较查询。
相比于if-else结构,switch的效率绝对是要高很多的,但是switch使用查找表的方式决定了case的条件必须是一个连续的常量。而if-else则可以灵活的多。
switch效率高,从汇编代码可以看出来。switch只计算一次值,然后都是test。
switch的效率与分支数无关。当只有分支比较少的时候,if效率比switch高(因为switch有跳转表)。分支比较多,那当然是使用switch。
本文编辑整理来源于w3cschool
java switch基础介绍及具体使用方法相关推荐
- 阿里云【名师课堂】Java零基础入门24 ~ 26:方法的定义与使用
阿里云[名师课堂]Java零基础入门24 ~ 26:方法的定义与使用 24:方法的基本定义 无返回值无参数 无返回值有参数 有返回值有参数 25:方法重载(重点) 26:方法递归调用 24:方法的基本 ...
- java radiogroup_Android基础控件RadioGroup使用方法详解
本文为大家分享了Android基础控件RadioGroup的使用,供大家参考,具体内容如下 1.简单介绍 RadioGroup可以提供几个选项供用户选择,但只能选择其中的一个.其下面可以横着或者竖着挂 ...
- java语言基础介绍
第一章java语言概述 1-1:Java知识图解 1-2. Java语言概述:Java简史 1991年 Green项目,开发语言最初命名为Oak (橡树) 1994年,开发组意识到Oak 非常适合于互 ...
- java 字符串 基础介绍
1-1.字符串的概述与特点 字符串的概述:在Java中Java.lang.String类代表字符串.字符串是常量,创建后用不可变. 字符串的特点: 1).字符串的内容在创建后永不可变.(重点) 2). ...
- 一、Java语言基础(4)_方法和数组——数组
2018-04-25 不悔梦归处,只恨未尽心 数组 一.一维数组 数组的含义:具有相同类型的多个变量按有序形式组织起来的数据形式.(数组是用来存储固定大小的同类型元素.) 数组的定义: 方式1(推荐使 ...
- 【2022软件创新实验室暑假集训】Java环境安装与基础介绍
Java环境安装与基础介绍 文章目录 文章目录 Java环境安装与基础介绍 文章目录 Java 简介 主要特性 关于语言学习的选择 Python Java Go&Rust Java环境配置 J ...
- 总结java创建文件夹的4种方法及其优缺点-JAVA IO基础总结第三篇
本文是Java IO总结系列篇的第3篇,前篇的访问地址如下: 总结java中创建并写文件的5种方式-JAVA IO基础总结第一篇 总结java从文件中读取数据的6种方法-JAVA IO基础总结第二篇 ...
- [Java入门笔记] 面向对象编程基础(二):方法详解
2019独角兽企业重金招聘Python工程师标准>>> 什么是方法? 简介 在上一篇的blog中,我们知道了方法是类中的一个组成部分,是类或对象的行为特征的抽象. 无论是从语法和功能 ...
- java的基础类库称为_JAVA基本类库介绍
8.1 包的概念 包是由.class文件组成的一个集合,.class文件时可以用Java解释其解释执行的文件,它也是由Java源的文件,即.Java文件经编译而生成的.Java是一种面向对象的语言,它 ...
最新文章
- java 线程面试题_JAVA多线程面试题(一)
- python飞机大战简书_python中的小游戏——飞机大战
- 关于Mysql 修改密码的记录
- python phpstudy_GitHub - Writeup007/phpStudyBackDoor: phpStudy后门检测与利用工具,Python脚本,可一键 GetShell。...
- 前端学习(3011):vue+element今日头条管理--关于编辑器代码段
- 跟我学《JavaScript高程3》第一讲,视频课程,课程笔记
- PyQt5笔记(08) – 输入对话框
- 设计模式系列之「装饰模式」
- 解决IE6中PNG图出现灰色背景问题
- Security+ 学习笔记48 攻击框架
- gmail api 发送邮件_Node定时自动发邮件功能
- win7一直卡在首次使用计算机,重装win7一直停留在正在启动windows解决方法(完美解决)...
- 「PMP答题卡」真实模拟PMP考试
- Unity---商店搭建
- Flink DataStream的多流、键控流、窗口、连接、物理分区转换算子的使用
- 软件测试周刊(第54期):管他乐观还是悲观,都滚蛋,干就完了。
- 明日书苑:史上书法字体分类最全(收藏版)
- php 浏览器唯一标识符,在PHP中获取唯一的Web浏览器ID
- 基于MFC开发的单文档画图(线段,多线段,矩形,椭圆,多边形),选中,变色,平移,线段长度,区域面积计算
- c语言作文的题目_c语言练习题目