<span style="font-size:14px;">
import java.util.Arrays;
public class BubbleSort {
public int[] sort(int[] source){
int[] dest=new int[source.length];
System.arraycopy(source, 0, dest, 0, source.length);
boolean change=true;
int temp=0;
//外层循环的退出条件是全部比较结束(i>=1),或一趟比较中没有发生位次的改变(change==false)
for(int i=dest.length-1;i>=1&&change;i--){
change=false;
for(int j=0;j<i;j++){
if(dest[j]>dest[j+1]){
temp=dest[j];
dest[j]=dest[j+1];
dest[j+1]=temp;
change=true;
}
}
}
return dest;
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
BubbleSort bubbleSort=new BubbleSort();
int[] source=new int[]{2,5,1,4,9,12,10,7,25};
int[] dest=bubbleSort.sort(source);
for(int i=0;i<dest.length;i++){
System.out.println(dest[i]);
}
}
} </span>