ackage dairlyPractice;
/*用程序使其中元素从大到小排序*/ public class paixu { public static void main(String[] args) { int[] number={70,80,31,37,10,1,48,60,33,80}; paixu(number); for(int i=0;i<number.length;i++) System.out.print(number[i]+" "); } static void paixu(int[] n) {//调用这个方法对数组排序 // TODO Auto-generated method stub int t; for(int i=0;i<n.length;i++){ if(n[i]<n[i+1]){ //由于n[i+1]造成了数组越界问题 t=n[i]; n[i]=n[i+1]; n[i+1]=t; } } } } 我改成了这样,解决了数组越界问题,但排序问题还是实现不了:public class paixu {
public static void main(String[] args) { int[] number={70,80,31,37,10,1,48,60,33,80}; paixu(number); for(int i=0;i<number.length;i++) System.out.print(number[i]+" "); } static void paixu(int[] n) {//调用这个方法对数组排序 // TODO Auto-generated method stub int t; for(int i=0;i<n.length-1;i++){ if(n[i]<n[i+1]){ t=n[i]; n[i]=n[i+1]; n[i+1]=t; } } } } 最后请教老师总算实现了从大到小排序了:public class paixu {
public static void main(String[] args) { int[] number={70,80,31,37,10,1,48,60,33,80}; paixu(number); for(int i=0;i<number.length;i++) System.out.print(number[i]+" "); } static void paixu(int[] n) {//调用这个方法对数组排序 // TODO Auto-generated method stub int t; for(int i=0;i<n.length;i++){ for(int j=i;j<n.length;j++){ if(n[i]<n[j]){ t=n[i]; n[i]=n[j]; n[j]=t; } } } } }