なんでそんなswapが話題になってるの?
tmp=a;a=b;b=tmp; でいいんでしょ?
プリミティブだと値のコピーによる交換だけど。
どーせプリミティブのコピーなんてたいしたコストじゃないし。