当前位置: 代码迷 >> J2SE >> 关于升降排序有关问题
  详细解决方案

关于升降排序有关问题

热度:75   发布时间:2016-04-24 12:12:15.0
关于升降排序问题
有没有大神能帮小弟解决一下难题!首先输入5个数字,然后按1顺序排列,按2降序排列!

------解决方案--------------------
import java.util.Arrays;
import java.util.Scanner;

public class SortTest {

public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入5个数");
double[] array = new double[5];
int count = 0;
double number = 0;
while(count < 5){
number = sc.nextDouble();
array[count] = number;
count++;
}

System.out.println("然后输入1升序排列,2降序排列");
while(true){
number = sc.nextDouble();
if(number == 1){
Arrays.sort(array);
break;
}
else if(number == 2){
Arrays.sort(array);
for(int i = 0; i < array.length/2; i++){
double temp = 0;
temp = array[i];
array[i] = array[array.length - i];
array[array.length - i] = temp;
}
break;
}
System.out.println("请输入1升序排列,2降序排列");
}

for(int i = 0; i < array.length; i++){
System.out.print(array[i] + " ");
}
System.out.println();
}

}

------解决方案--------------------
Java code
import java.util.*;public class Demo_5 {    public static void main(String[] args) throws Exception{        Scanner sc = new Scanner(System.in);        double[] arr = new double[5];                System.out.println("请输入五个数字");        for (int i=0; i<5; i++){            double number = sc.nextDouble();            arr[i] = number;        }        //测试输入的五个数字是否正确        //for (double e: arr)            //System.out.println(e);        while (true){            String str = javax.swing.JOptionPane.showInputDialog(" 1: 升序  2: 降序");            int j =(int)Integer.parseInt(str);            switch(j){            //升序            case 1: {                Arrays.sort(arr);                for (double e: arr)                    System.out.print(e + " ");                System.out.println();            }break;            //降序            case 2:{                for (int k=arr.length-1; k>=0; k--)                    System.out.print(arr[k] + " ");                System.out.println();            }break;            default :{                javax.swing.JOptionPane.showMessageDialog(null, "你的输入有误!!!");            }break;            }        }    }}
  相关解决方案