有没有大神能帮小弟解决一下难题!首先输入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; } } }}