这听起来很疯狂,但我很想知道是否可以使用一条指令来修改两个不同变量的值。 例如,假设我有这段代码(x 和 y 是 int 变量):
if(x < 0) {
y -= x ;
x = 0;
}
如果 x 等于 -1,我将通过执行以下操作获得相同的结果:
if(x < 0) y -= x++;
有没有办法概括之前的结果?我尝试了指令:
if(x < 0) y -=x-=x;
但是,当最后的 x 等于 0 时,y 不会被修改。我缺少什么?
编辑
我认为(我可能错了)很明显我的问题纯粹是理论上的。 我知道应该避免这种做法。我只是好奇 :)。
最佳答案
试试这个:
if(x < 0) x = (y -= x) - y;
可以尝试这些技巧来应对挑战。但是,不要在您的实际代码中使用这种类型的代码,因为它会给其他人造成混淆。
关于java - 单指令双重赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41469033/