java中的返回值语法

Fra*_*nXh 2 java return

我不太确定这个方法做了什么,或者更好,我不确定":"是什么意思.有人可以帮我理解吗?

private int guess( )
 {
      return isTrue( ) ? A : isFalse(  ) ? B : neither( ) ? C : D;
 }
Run Code Online (Sandbox Code Playgroud)

wkl*_*wkl 8

这是嵌套三元运算符的情况,其形式的a ? b : c计算结果为:

if (a) then b, else c
Run Code Online (Sandbox Code Playgroud)

所以你的问题可以解释为:

if (isTrue()) {
    return A;
} else if(isFalse()) {
    return B;
} else if(neither()) {
    return C;
} else {
    return D;
}
Run Code Online (Sandbox Code Playgroud)