配列の入れ換えをする関数を作ろうと思い、下のようなコードを書いたのですが入れ換えてくれません。
Cでポインタで渡すようなことをしたいのですが、どうしたらいいのでしょうか?
よろしくお願いします。

class Foo {
 ...
 static void swap(Foo n, Foo m) {
  Foo tmp;
  tmp = n; n = m; m = tmp;
 }
}

public class Test {
 public static void main(String[] args) {
  Foo foo[] = new Foo[5];
  for (int i = 0; i < foo.length; i++) {
   foo[i] = new Foo();
  }
  Foo.swap(foo[2], foo[3]);  // <--2番目と3番目を入れ換え
 }
}