你的while循环里,循环了4次,每次ref值都是0,相反y在+1的变化,只是输出了4次islands[0]=0,1,2,3。

解决方案 »

  1.   

    public class TestArrays {
        public static void main(String [] args) {
            int [] islands = new int[4];
             
            int [] index = new int[4];
             
            int y = 0;
            int ref;
            while (y < 4) {
        ref = index[y];
                islands[ref]=y;
                y=y+1;
        System.out.println("y:" + y + "ref:" + ref);
                System.out.println("island = " + islands[ref]);
                for(int i=0; i<4; i++)
    System.out.printf("%-5d",islands[i]);
                }
        System.out.println();
             
        }
    }