Java 如何交换两个整数

Java 如何交换两个整数,java,Java,假设变量为3,另一个为5。我需要在没有其他变量的情况下切换它们的值。如何操作?可以使用以下方法操作: 这被称为(维基百科的那篇文章详细介绍了它是如何工作的,所以我建议你读一下) 但是,这并不是特别容易理解(更不用说它只适用于整型),因此在几乎所有的上下文中,都首选使用临时变量: int tmp = x; x = y; y = tmp; 为什么不使用单独的变量就需要这样做?除了写复杂的代码之外,我看不出有什么原因。这绝对不是现实世界中的问题。怎么办?尤达问道。顺便说一句,谷歌,甚至是古老的维基百

假设变量为3,另一个为5。我需要在没有其他变量的情况下切换它们的值。如何操作?

可以使用以下方法操作:

这被称为(维基百科的那篇文章详细介绍了它是如何工作的,所以我建议你读一下)

但是,这并不是特别容易理解(更不用说它只适用于整型),因此在几乎所有的上下文中,都首选使用临时变量:

int tmp = x;
x = y;
y = tmp;

为什么不使用单独的变量就需要这样做?除了写复杂的代码之外,我看不出有什么原因。这绝对不是现实世界中的问题。怎么办?尤达问道。顺便说一句,谷歌,甚至是古老的维基百科中的搜索功能都会给你一个很好的、彻底的答案……低内存芯片的XOR交换习惯用法。但是一个成熟的编译器会优化它。听起来像是一个面试问题。当然,你永远不会在真正的代码中这样做。我在某个地方看到了,很快就忘了它是完全无用的。。。。
int tmp = x;
x = y;
y = tmp;