如何以最优雅的方式完成以下操作:
int i = oneOrZero;
if (i == 0) {
i = 1;
} else {
i = 0;
}
你可以假设 i
只能取值 1 或 0。
减法?
i = 1 - i;
i = (i == 0)?1:0
是一种方法,不过我更喜欢 @Jimmy 和 @Yuval 的版本。
int i = 1
或int i = 0
,而不是一个叫做oneOrZero的变量... - Chinmay Kanchii = ( i + 1 ) % 2
,虽然我认为我们都同意减法或异或方法更好!(尽管它还有一个额外的好处,可以将开关翻转到不止二进制。)
使用位异或运算符:
i ^= 1;
int x = 0;
x=(int)Math.cos(x);
System.out.println("X value "+x);