如何在Java中交换两个对象?

Cha*_*ghe -1 java

我有一个为Fraction对象编写的类.我需要交换两个Fraction对象,而不是对象的内容.这是我的代码.

public void fswap(Fraction other){
    Fraction temp = other.copy();
    other = this;
    this = temp;
Run Code Online (Sandbox Code Playgroud)

copy()方法返回与调用它的对象相同的Fraction对象.此代码的最后一行在我的IDE中抛出一个错误"无法为最终变量赋值".任何帮助是极大的赞赏.

Lou*_*man 5

不能在Java中编写交换方法来交换对象,而不是其内容.这几乎是不可能的.这是传值语言的一个显着特征,尽管记住Java 按传递引用始终很重要.