switch结构可以更好的解决等值判断问题
switch 选择结构的语法:
switch (表达式){
case 常量 1:
//代码块1;
break;
case 常量 2:
//代码块2;
break;
。。。。。。
default:
//代码块n;
break;
}

解释:
1.switch: 表示“开关”,这个开关就是switch后面小括号里的值,
小括号里要放一个整形变量(表达式)或字符类型(表达式)。
2.case: 表示“情况。情形”,case必须是一个整型或字符型的常量,
通常是一个固定的字符,数字,如"8"."a"。case块可以有多个,
顺序可以改变,但是每个case后面常量的值必须各不相同。
3.default: 表示"默认",即其他情况都不满足。default后要紧跟冒号。
default块和下case块的先后顺序可以变动,不会影响程序执行的结果。
通常,default块放在末尾,也可以省略。
4.break 表示是“停止”,即跳出当前结构。

switch选择结构的执行过程:
先计算并获得switch后面小括号里的表达式或变量的值,然后
将计算结果顺序与每个case后的常量比较,当第二者相等时,执行这个case块中的代码;
当遇到break是,就跳出switch选择结构,执行switch选择结构之后的代码。
如果没有任何一个case后的常量与switch后的小括号中的值相等,则执行
switch末尾部分的default块中的代码。

注意:
1.每个case后的代码块可以有多个语句,即可以有一组语句,而且不需要用“{}”括起来。
case和default后都有一个冒号,不能漏写;否则编译不通过。对于每个case的结尾,
都要想一想是否需要从这里跳出整个switch结构。如果需要,不要忘记写"break";。
2.在case后面的代码块中当变量day的值为1 2 3 时,都将输出“奇数!”;
当变量day的值为2 4 6时,都将输出“偶数!”
eg:
int num=3;
switch(num){
case 1:
case 3:
case 5:
System.out.println("奇数!");
break;
case 2:
case 4:
case 6:
System.out.println("偶数!")
break;
}

多重if和switch选择结构很相似,它们都是用来处理多分支条件的结构,
但是switch选择结构只能用于等值条件判断的情况。
在JDK 1.6之前的版本中,switch选择结构的条件必须是整型变量或字符型变量,
但在JDK 1.7中,switch选择结构的条件中也可以使用String类型。
在程序开发过程中,需要考虑使程序具有较高的容错性。

switch与java的更多相关文章

  1. Java 7 中的Switch 谈 Java版本更新和反编译知识

    Java 7 中的Switch 谈 Java版本更新和反编译知识          学习编程,享受生活,大家好,我是追寻梦的飞飞.今天主要讲述的是Java7中的更新Switch实现内部原理和JAD反编 ...

  2. .NET中使用switch和java不一样的地方。

    1.不能这样贯穿 我们知道,java 和 C在使用switch时候可以这样. switch (i) { //java中此处不使用break // 执行了case 1:对应的语句后直接 贯穿到 case ...

  3. switch与java,c#的异同

    <script type="text/javascript" language="javascript"> //JavaScript控制语句基本和以 ...

  4. trangleProble switch方法 java

    public class trangleProblem { static int res=1; int codePart=1; int n=100; Stack<Param> stack= ...

  5. go switch 和java C#有不同

    1 switch 后的语句可以有简单的赋值语句 2 case :后的语句结束后不需要break;默认自动结束 除非以 fallthrough 语句结束,否则分支会自动终止 没有条件的 switch 有 ...

  6. Java & Groovy & Scala & Kotlin - 20.Switch 与模式匹配

    Overview 本章主要介绍高级条件语句中的 switch 语句以及其增强版的模式匹配. Java 篇 Switch 特点 Java 中 switch 语句功能类似 if,但是 switch 主要用 ...

  7. Java switch 详解

    switch 语句由一个控制表达式和多个case标签组成. switch 控制表达式支持的类型有byte.short.char.int.enum(Java 5).String(Java 7). swi ...

  8. 说说Java中你不知道switch关键字

    Switch语法 switch作为Java内置关键字,却在项目中真正使用的比较少.关于switch,还是有那么一些奥秘的. 要什么switch,我有if-else 确实,项目中使用switch比较少的 ...

  9. java 枚举类型分析

    最近做android开发,需要用到枚举值,这样可以连续赋值,我按之前c++那样书写,如下所示: public enum ColorSelect { RED_BAGE = 0, GREEN_BAGE, ...

随机推荐

  1. Java线程池及其底层源码实现分析

    1.相关类 Executors  ExecutorService   Callable   ThreadPool     Future 2.相关接口 Executor Executor接口的使用: p ...

  2. lazy初始化和线程安全的单例模式

    1.双检锁/双重校验锁(DCL,即 double-checked locking) JDK 版本:JDK1.5 起 是否 Lazy 初始化:是 是否多线程安全:是 实现难度:较复杂 描述:这种方式采用 ...

  3. ef——存储过程

      数据库中存在存储过程GetCategory: ALTER proc [dbo].[GetCategory] @cid int as begin select * from Categories w ...

  4. lodop打印多页

    定义全局变量 var loop = null; 加载时候打印 window.On_CLodop_Opened = function () { print(); //OpenPreview()是调用打印 ...

  5. jQuery 判断元素上是否绑定了事件

    我研究了一下之后发现,jQuery都将事件缓存起来了,其实也是为了防止内存溢出以及页面unload的时候的速度,也包括多函数触发,方便管理等诸多好处,具体可以参考此文. jQuery会在window. ...

  6. 三:Bootstrap-js插件

    模式框: <button class="btn btn-default btn-lg" data-toggle="modal" data-target=& ...

  7. JS 监听键盘按键

    1. 实现Ctrl+ Enter 组合键触发事件 document.onkeydown=function(event){ var keyNum = window.event ? event.keyCo ...

  8. DevExpress13.2.9 控件使用经验总结

    一.换肤功能 1. 添加 DevExpress.OfficeSkins 和 DevExpress.BonusSkins 两个引用 2. 皮肤注册 DevExpress.UserSkins.BonusS ...

  9. CodeForces 616A(水题)

    while(t--) 最后结果t=-1 #include <iostream> #include <string> #include <cstring> #incl ...

  10. Fill Table Row(it’s an IQ test question)

    Here is a table include the 2 rows. And the cells in the first row have been filled with 0~4. Now yo ...