0

次の演算子に代わるものがあるかどうか疑問に思っていました:

if (f == 0){
    System.out.print("");
} else if (i %2 == 1){
    System.out.print("; ");
}

より明確にするために、if ステートメントの "==" と else if ステートメントの%2 == 1.

ありがとう。

4

3 に答える 3

1

System.out.print(f!=0 && i%2==1 ? "; " : "");

モジュロの代わりに、ビットごとの and によって、最後のビットを除く i のすべてのビットにフラグを立てることができます。

の代替i%2は ですi&1

于 2013-03-13T12:33:04.763 に答える
0

Equals 演算子==は、オブジェクトの場合は参照を比較し、プリミティブ型の場合は実際の値を比較します。

この演算子を置き換えることができるシナリオはequals(Object obj)、プリミティブ型のラッパー オブジェクトが使用される場合です。

したがって、 と が 2 つintありabそれらのラッパーを次のように取得する場合:

Integer objA = Integer.valueOf(a);
Integer objB = Integer.valueOf(b);

a == bと同じ結果が得られobjA.equals(objB)ます。

于 2013-03-13T12:37:20.663 に答える