java - 单指令双重赋值

标签 java

这听起来很疯狂,但我很想知道是否可以使用一条指令来修改两个不同变量的值。 例如,假设我有这段代码(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/

相关文章:

java - 从列表中删除几乎重复项

java - 从 linux 命令创建 Java 字符串

Java正则表达式检查日期和时间

java - 如何转换例如 : (int)5 to (byte)0x05 in Java?

java - 在方法名称中发现无效字符。 HTTP 方法必须是 token

java - 使用 SwingX 对 JXTable 进行排序

java - 带有动画的 WindowManager(可能吗?)

java - 任务栏在启动时隐藏 jFrame?

java - 从 firebase 实时数据库读取数据到 TextView

java - 冒泡排序没有排序