java中的三目运算

博主理解的三目运算

还是萌新小白的博主认为,三目运算和java逻辑中的if else 极为的相似,所以大家刚接触的时候完全可以把它认为就是if else!

想必大家一定都在代码中见过 a==b ? 1:0  这种的格式吧。

那么,他是怎么进行运算的呢?

在 ? 前面 返回给我们的基本上都是 true  或  false,当  ? 前面返回 true 的时候,就走 : 前面(左边)的代码 ,同理, ? 返回为false时, 就会执行  : 后面(右边) 的代码

话不多说,我们配合代码来理解它。

public static void main(String[] args) {
		
		int a = 1;
		int b = 2;
		int c = 1;
		
		int result = a == b ? 1 : 0;
		System.out.println(result);
		
		int s = a == b ? 0 : a == c ? 3 : 4;
		System.out.println(s);
		
		
	}
	

第一段控制台输出 0 , 很显然,a==b 返回的为false 所以执行 : 后面的代码,顾result被赋值为0,

第二段控制台输出 3,这又是为什么呢,我们一步步分析。

首先,a==b 返回 false 执行冒号后面的 来到了 a==c ,再次返回 true 执行冒号前面的 ,顾得 将 3 赋值给 s。

以上就是博主的一些对于三目运算的看法,如有不足,还请诸位指出。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章