Cだとポインタで。。と言うアレ。Javaってできないんだっけ結局。 参照型(クラスとかプリミティブな変数でも配列なら)でやる。 参照つかわんとだめだった。 他だとラッパークラスとかですかねえ。。 JUGEMテーマ: コンピュータ OreSwap.java public class OreSwap { public static void main(String[] args) { int ia[] = {4,10}; swap(ia[0],ia[1]); System.out.println("[0] "+ia[0]); System.out.println("[1] "+ia[1]); /* 整数配列iaにたいして作用しない */ swap(ia); System.out.println("[0] "+ia[0]); System.out.println("[1] "+ia[1]); /* いれかわりー */ } static void swap(int x,int y){ int varinfunc1 =x; int varinfunc2 = y; int temp = x; varinfunc1=y; varinfunc2=temp; // なんもしない。 } static void swap2(int x,int y){ int[] varinfunc= {x,y}; int temp = varinfunc[0]; y=varinfunc[0]; varinfunc[1]=temp; x=varinfunc[1]; } static void swap(int[] array){ int[] arrayinfunc = array; int temp = array[0]; arrayinfunc[0]= array[1]; arrayinfunc[1]= temp; //仮引数 arrayに指定された。こっちだと //iaの値が変わる。 } }