0

記号「?」は何を意味しますか? および ':' は、return ステートメントで意味しますか?

public boolean isItBigger(BigInteger num1, Long num2) {
        return num1 == BigInteger.ONE || num2.intValue() > 0 ? true : false;
    }

また、ifステートメントでそれらを見たことがあると思います。

4

3 に答える 3

4

?andの使用:は、Java の三項条件演算子(JLS 15.25) です。式の結果

aBoolean ? expr1 : expr2

であるexpr1場合aBooleantrue、そうでない場合はですexpr2

この場合、不要なので省略できます。

return num1 == BigInteger.ONE || num2.intValue() > 0;
于 2013-04-03T18:05:42.747 に答える
1

三項演算子です。以下は同等です

if (x == y)
   x = 2;
else
   x = 3;

x = (x == y) ? 2 : 3;

ただし、コード例はばかげています。最初に、式が true と評価されるかどうかを確認しています。一致する場合は、true を返します。次のように、式自体の結果を返すこともできます。

return num1 == BigInteger.ONE || num2.intValue() > 0;
于 2013-04-03T18:06:01.683 に答える
0

これは条件/三項演算子と呼ばれます

boolean-expression ? do-this-if-true : else-do-this

の短縮形です

if (boolean-expression) {
do-this
} else{
do-this
}
于 2013-04-03T18:06:13.393 に答える