美文网首页Android开发之JAVA篇
第二章 java基础(条件运算符)

第二章 java基础(条件运算符)

作者: 不用管我是谁 | 来源:发表于2017-05-02 22:41 被阅读0次

—— 本文参照 Learn Java for Android Development (第三版)

最近好多在群里说android要退了,将要跟Chorme合并了,android将何去何从呢。。。。但是作为一个程序员我只能简单地做好我能做的事情,我没法去想那么多还没有发生的事情。
条件运算符
条件运算符主要有条件与(&&),条件或(||),条件运算符(?:)。前面两个条件运算符首先会判断运算符左边的操作数,然后再根据左边的判断结果来选择是否再对右边的进行判断。第三个操作符的结果由第三个布尔操作数决定。
条件与运算符的左边操作数如果是true的话会判断右边的操作数,否者的话就不对右边的操作数进行判断。例如:age > 64 && stillWorking,首先我们会判断age > 64,如果这个子表达式为真的话,就会对stillWorking的真假进行判断,stillWorking值就代表了真个表达式的真假。如果age > 64 如果为假的话,stillWorking 就不进行判断了。
条件或运算符的左边操作数为false的话我们才会去判断右边的操作数,否者的话就不对右边的操作数进行判断,例如:value < 20 || value > 40,首先判断子表达式value < 20,如果子表达式为flase的话就对value > 40进行判断,value > 40也决定了整个表达式的值。如果value < 20本来就为真的话那么value > 40就不进行判断了。
条件与和条件或其实在某种意义上提高了运算效率,因为在很多运算表达式里面我们只需要对表达式的前半部分做出判断就可以了,例如,如果条件与的左边操作数已经是false,那么无论右边的操作数是什么都影响不了整个表达式的结果为false的事实了。
在实际的开发中如果没有注意到上面的内容的话可能会犯错。比如这样子的一个表达式:age > 64 &&++numEmployees > 5,这个表达式的本意是想条件与运算结束以后numEmployees 能增加1,但是在实际的运算过程中只有那些age>64的情况numEmployees才会加1,因为如果age小于等于64的话后面的表达式就不会做判断了。
条件运算符还有一个很大的用处,那就是通过一个表达式然后返回两个操作数中的一个的时候,下面的例子是通过判断一个布尔变量然后用1或者0作为这个变量的返回值:
boolean b = true;
int i = b ? 1 : 0; //结果是1被赋值给了i
下面用一段代码来实际体验一些条件操作符:
public class Test
{
public static void main(String[] args)
{
int age = 65;
boolean stillWorking = true;
System.out.println(age > 64 && stillWorking);
age--;
System.out.println(age > 64 && stillWorking);
int value = 30;
System.out.println(value < 20 || value > 40);
value = 10;
System.out.println(value < 20 || value > 40);
int numEmployees = 6;
age = 65;
System.out.println(age > 64 && ++numEmployees > 5);
System.out.println("numEmployees = " + numEmployees);
age = 63;
System.out.println(age > 64 && ++numEmployees > 5);
System.out.println("numEmployees = " + numEmployees);
boolean b = true;
int i = b ? 1 : 0; // 1 assigns to i
System.out.println("i = " + i);
b = false;
i = b ? 1 : 0; // 0 assigns to i
System.out.println("i = " + i);
}
}
编译javac Test.java
执行 java Test
结果如下:
true
false
false
true
true
numEmployees = 7
false
numEmployees = 7
i = 1
i = 0

Page 61

相关文章

  • Java基础随记1

    Java基础随记 赋值运算符 比较运算符 逻辑运算符 条件运算符 条件运算符( ? : )也称为 “三元运算符”。...

  • 4/07day28_js基础

    day28_js基础 回顾 JS基础语法 JS运算符 JS流程控制语句 条件语句 JS的条件语句和Java语法基本...

  • 2017年技术规划

    2017年技术规划 03 编程基础一 Java语法基础: 运算符、访问控制、循环、条件、反射 面向对象: 类、抽象...

  • java基础知识

    title: java基础知识tags: [java基础知识] 位运算符 java种的运算符有 “&”,“|”,“...

  • 第二章 java基础(条件运算符)

    —— 本文参照 Learn Java for Android Development (第三版) 最近好多在群里说...

  • Java基础知识3

    Java基础知识3 运算符 Java语言支持如下运算符 算术运算符:+,-,*,/,%模,取余数,++,-- 赋值...

  • 条件运算符

    这篇文章介绍下Java的条件运算符,条件运算符是Java当中的唯一一个三目运算符,前面已经介绍过什么是单目运...

  • Java中容易被你忽略的细节(一)

    1.Java中的条件运算符 条件运算符是"? : "是Java中唯一一个三目运算符,格式为: 表达式1 ?表达式2...

  • Java-运算符

    java运算符是来操纵变量,有算术运算符、关系运算符、位运算符、逻辑运算符、赋值运算符、条件运算符和instanc...

  • 《零基础 Java 开发 》 第三章 运算符

    《零基础 Java 开发》 第3章 运算符

网友评论

    本文标题:第二章 java基础(条件运算符)

    本文链接:https://www.haomeiwen.com/subject/fdbhtxtx.html