public class Test888 {
int[] array=new int[5];
public int[] getArray(){
for(int i=1;i<5;i++){                                          //以下几行是给array[]赋不同随机数值的
for(int j=0;j<i;j++){
while(array[i]==array[j]){
array[i]=(int)(Math.random()*5);
j=0;
}
}
}
return array;
}
public static void main(String[] args){
Test888 t=new Test888();
for(int i=0;i<5;i++){
System.out.print(t.getArray()[i]+"\t");
}
}
}
这样的话是能得到5个不同的随机数的(当然,没有对array[]赋初值,那么t.getArray[0]肯定为0,但是不影响t.getArray[]还是为不同随机数),但是如果我把int[] array=new int[5];这句话放到getArray()这个方法里面,最后却得不到5个不同的随机数,这是为什么啊?放外面和里面array[]不都经历了重新赋不同随机数值的程序吗?为什么结果不一样?