switch判断语句
一、switch判断语句基本内容
1.switch后面使用的表达式可以是那些?
switch表达式后面的数据类型只能是(jdk 4):byte,short,char,int四种整形类型;
jdk 5:byte short int char enum(枚举)
jdk 7: byte short int char enum(枚举),String 六种类型
2.enum(枚举):一般枚举的格式是,枚举类.枚举类型,使用 switch 的要义在于,case 枚举类型,而不是 case 枚举类.枚举类型;总之枚举就是将你输入的字符串转换为一组数据存在相应的变量中。
3.String(字符串型):用equlas进行写入字符串内容,如果没有对equals方法进行重写,则比较的是引用类型的变量所指向的对象的地址;equals 重写:值内容 , equals不重写:地址
所有没有重写equals()方法的类中,调用equals()方法其实和使用==的效果一样,也是比较的地址值,然而,Java提供的所有类中,绝大多数类都重写了equals()方法,equals方法进行了重写则是用来比较指向的对象所存储的内容是否相等。
4.switch中可有有null(空值)吗?
在switch语句中,表达式的值不能是null,否则会在运行时抛出NullPointerException。在case子句中也不能使用null,否则会出现编译错误。
5.case后的数值能重复吗?
case后的数值是不可以重复的,对于字符串类型的也一样,但是字符串中可以包含Unicode转义字符。重复值的检查是在Java编译器对Java源代码进行相关的词法转换之后才进行的。也就是说,有些case字句的值虽然在源代码中看起来是不同的,但是经词法转换之后是一样的,就会在成编译错误。比如:“男”和“\u7537”就是一个意思。
二、案例:
使用switch语句改写下列if语句:
int a = 3;int x = 100;if(a==1) x+=5;else if(a==2)x+=10;else if(a==3)x+=16;else x+=34;
替换后的代码:
switch(a){case 1:x+=5;break;case 2:x+=10;break;case 3:x+=16;break;default:x+=34;}
完整代码:
public class lianxi_3_2{public static void main(String[] args){int a=3;int x=100;switch(a){case 1:x+=5;break;case 2:x+=10;break;case 3:x+=16;break;default:x+=34;}System.out.println("x="+x);}
}
运行结果:
二、使用 switch case 语句也有以下几点需要注意。
case 里面必须跟 break,不然程序会一个个 case 执行下去,直到最后一个 break 的 case 或者 default 出现。
case 条件里面只能是常量或者字面常量。
default 语句可有可无,最多只能有一个。
switch判断语句相关推荐
- php switch case 判断语句,PHP的switch判断语句的“高级”用法详解,switch详解_PHP教程...
PHP的switch判断语句的"高级"用法详解,switch详解 只所以称为"高级"用法,是因为我连switch的最基础的用法都还没有掌握,so,接下来讲的其实 ...
- PHP使用Switch语句判断星座,PHP的switch判断语句的“高级”用法详解 用switch语句怎样判断成绩的等级...
php switch case 求具体详解,case里面能加if语句? swich 语句 我非常喜欢用 case里面加if干嘛 . php switch中能加if语句吗 PHP里 switch cas ...
- switch判断语句用法
switch括号内的语句条件和case后面的字段进行匹配测试,如果匹配一样,则执行case后面的语句,不一样 break跳出判断,执行下一个条件. /*switch语句 * 一旦条件满足不会出 ...
- c# string 转 datetime_C#判断语句详解(if、if-else、switch-case、三目/元运算符)
判断语句是指程序指定一个或者多个需要评测的条件时,映射出两种结果,条件成立或者不成立时需要执行的内容. 判断语句的类别 代码如下 using System;using System.Collectio ...
- c#switch语句判断成绩_Go的条件判断语句
现实时间中,我们如果想去购物,可以选择网上或者线下去购物,甚至说,要购买的物品都有许多选择,选价格便宜的,选质量好的,选不用运费等等 那么在计算机语言中,我们要怎么实现现实中,这些选择呢? Go语言支 ...
- 选择判断语句(switch)
选择判断语句(switch) 一.switch语句格式 switch(表达式){ case 取值1: 执行语句: break: case 取值2: 执行语句: break: -... defau ...
- 【小白学习C++ 教程】三、C++用户输入、判断语句和switch
@Author:Runsen 文章目录 用户输入 判断语句 switch 用户输入 cout用于输出(打印)值的 .现在将使用cin来获取用户输入. cin是预定义的变量,可使用提取操作符(>& ...
- 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)
求1+2+3+-+n,要求不能使用乘除法.for.while.if.else.switch.case等关键字及条件判断语句(A?B:C) 文章目录 求1+2+3+...+n,要求不能使用乘除法.for ...
- 前端:JS/19/特殊运算符,运算符优先级,if条件判断语句,switch分支语句,while循环语句,for循环语句,break和continue循环控制语句,实例:九九乘法表
特殊运算符 new运算符:创建一个对象.如:var today=new Date(); delete运算符:删除数组的元素,或者对象的属性: typeof运算符:一元运算符,主要功能:判断变量的类型的 ...
最新文章
- 漫画:什么是快速排序?(完整版)
- 各种系统启用snmp协议的方法
- 机器学习实战3--豆瓣读书简介
- 将MyEclipse项目导入到Eclipse中
- Scintilla 3 24在MFC中的使用 动态 静态
- HCNA配置telnet远程管理
- 5 好看的字体样式_嫌电脑字体样式太少,这款小软件几百种的样式随便你选择...
- linux动态调试工具od,OllyDBG(OD动态调试工具)
- 怎么用html做随机颜色,JavaScript 实现网站标签随机颜色的方法
- unityar自动识别人脸_Unity人脸识别插件分享 | 技术贴
- .net DLL反编译文件
- C/C++ 中 int 转 string,string 转 int 的几种方法
- tcp_sock_struct
- emv交易流程介绍_(精)EMV流程介绍.ppt
- Chrome 93 版本新特性 Chrome 93 版本发行说明
- 小程序全套购物车(全选,单选,反选,删除,价格计算)
- PageHelper处理分页问题,total总数不对
- BTree和B+Tree详解结构
- Android最牛的开源整理
- [转]情侣相处最佳模式
热门文章
- 安卓Intent跳转到系统应用中的一些界面的方法
- 投资超百亿 新能源“绿岛”项目落户温州洞头
- 优化模型验证关键代码26:异构车队车辆路径问题模型及gurobipy实现
- 2023TMEA腾讯音乐娱乐盛典举办 蔡依林张靓颖周深等现场演唱
- 全面认识海思SDK及嵌入式层开发(3)
- 2022年12月安全事件盘点
- 0CTF-2016-piapiapia(PHP反序列化字符逃逸)
- android打开视频噔_Android中三种视频的播放
- RSS Reader for MAC Code
- stm32毕设 STM32的智能水产养殖系统