可以简化此条件语句吗?

时间:2019-04-30 04:11:03

标签: java logic conditional

是否可以使用&&或||,甚至&或|简化以下语句或^?

int result = A ? (B ? 1 : -1) : (B ? -1 : 1);

我相信我可以像这样分配一个临时变量:

boolean C = B ? A : !A; // Also: is it correct that this can be simplified to !(A ^ B)?

然后执行:

int result = C ? 1 : -1;

但是我很好奇是否可以没有临时变量。

1 个答案:

答案 0 :(得分:1)

您似乎已经有了答案。

int result = !(A ^ B) ? 1:-1