使用目前的代码结果里会出现0,使用注释的代码块进行替换就没有问题,谁能说说是为什么?
import javax.swing.JOptionPane;
import java.util.*;
public class TempTest{
int[] getArray(){
int intTimes = Integer.decode(JOptionPane.showInputDialog("输入随即数组的大小:"));
Random r = new Random();
int[] a = new int[intTimes];
for(int i=0;i<intTimes;i++){
a[i] = r.nextInt(1000);
}
return a;
}
void sort(int[] a){
int minlocate,temp;
for(int i=0;i<a.length;i++){
minlocate = i;
for(int j=i;j<a.length;j++){
if(a[minlocate]>a[j]){
minlocate = j;
}
}
a[minlocate] = a[minlocate] + a[i];
a[i] = a[minlocate] - a[i];
a[minlocate] = a[minlocate] - a[i];
/*temp = a[minlocate];
a[minlocate] = a[i];
a[i] = temp;*/
}
}
public static void main(String[] s){
TempTest t = new TempTest();
int[] a = t.getArray();
t.print(a);
t.sort(a);
t.print(a);
}
void print(int[] a){
for(int i:a){
System.out.println(i);
}
System.out.println();
}
}