J2SE_条件语句
来源:互联网 发布:像堆糖的软件 编辑:程序博客网 时间:2024/05/17 07:47
一、if ... else if ...else
判断多个条件的时候使用,示例代码如下:
public class TestDemo1 {public static void main(String[] args) {int a = 10;if (a == 1){System.out.println("xxxxx");}else if (a == 5){System.out.println("yyyyy");}else if (a == 10){System.out.println("zzzzz");}else{System.out.println("doesn't exist!");}}}输出结果:zzzzz
这是正常的使用情况。但是,如果你的条件满足其中多个分支并且你希望都执行时,这样做逻辑上是错误的。示例代码如下:
public class TestDemo {public static void main(String[] args) {int a = 6;if (a > 1){System.out.println("xxxx");}else if (a > 2){System.out.println("yyyy");}}}
输出结果:xxxx
以上代码中,a > 1 并且 a > 2, 但是这里只会输出:xxxx, 不会执行yyyy的输出。因为if ...esle if 当前面有一个分支满足条件时,之后的分支即使有满足条件的也不会执行。此时应该使用两个独立的if语句即可。代码示例如下:
public class TestDemo2 {public static void main(String[] args) {int a = 6;if (a > 1){System.out.println("xxxx");}if (a > 2){System.out.println("yyyy");}}}输出结果:xxxx
yyyy
以上的问题很小,但是不可小视,否则会在开发中带来很大麻烦。
二、switch ... case ...
一种很简便的选择语句,switch(a),其中a只支持数字,字符,枚举(1.5之后)
代码示例:
public class TestDemo3 {public static void main(String[] args) {int a = 5;switch (a) {case 1 : System.out.println("xxxx");case 5 : System.out.println("yyyy");case 10 :System.out.println("zzzz");default : System.out.println("doesn't exist!");}}}输出结果:yyyy
zzzz
doesn't exist!
以上结果可以看出,匹配到符合条件的case分支时,开始执行,一直到switch的结束。如果没有符合条件的case分支语句时, 就执行default语句(没有default就什么都不执行)。但是,我们只希望执行yyyy,解决办法是在每一个case语句后面加上break语句,让程序跳出switch语句。正确使用的代码示例如下:
public class TestDemo3 {public static void main(String[] args) {int a = 5;switch (a) {case 1 : System.out.println("xxxx");break;case 5 : System.out.println("yyyy");break;case 10 :System.out.println("zzzz");break;default : System.out.println("doesn't exist!");}}}
结合枚举使用switch, 示例代码:
enum Color { //不可以用public来修饰,因为Color本质是一个类,而在一个Java文件中,至多有一个public类RED, BLUE, BLACK;}public class TestDemo4 {public static void main(String[] args) {Color c = Color.BLUE;switch (c){ //等价于Color.BLUEcase RED : //Color.RED 会报错 System.out.println("red");break;case BLUE : System.out.println("blue");break;case BLACK : System.out.println("black");break;default : System.out.println("error");}}}
0 0
- J2SE_条件语句
- 条件语句
- 条件语句
- 条件语句
- 条件语句
- 条件语句
- 条件语句
- 条件语句
- 条件语句
- 条件语句
- 条件语句
- 条件语句
- 条件语句
- 循环语句&条件语句
- 条件语句、循环语句
- 条件和条件语句基础知识
- J2SE_枚举类
- J2SE_数组学习笔记
- runtime系列1--Objective-C Runtime Programming Guide简介
- iOS中的静态库和动态库
- C语言字符串指针变量与字符数组的区别
- flash的动画如何转换到cocos2d-x上用呢?
- linux驱动之简介
- J2SE_条件语句
- Github使用教程(一)--搭建Github环境
- mysql常用函数
- 函数式编程的优点
- 空间坐标变换的矩阵表示法
- Install The PostgreSQL on the Ubuntu Server hosted by the Digital Ocean
- SQL中内连接和外连接
- 为SUSE Linux添加软件安装源的方法(图文)
- HLSL初级教程