的意思 ?在Java中

时间:2014-09-21 06:21:33

标签: java ternary-operator

ltVal = node.left  != null ? node.left.height  : 0;

我认为这是用Java编写的,任何人都可以解释这意味着什么?无法理解这种速记符号

1 个答案:

答案 0 :(得分:2)

它被称为三元运算符,它只是运算符,它采用3个操作数。更好的意义是,它是表示较短格式的条件运算符

常规语法

boolean expression ? value1 : value2

你的例子:

ltVal = node.left  != null ? node.left.height  : 0;

一样
  if( node.left != null)
       itVal = node.left.height
  else
       itval = 0;