java獲取鍵盤輸入的數字,並進行排序
阿新 • • 發佈:2019-01-01
需求:由鍵盤輸入三個整數分別存入變數num1、num2、num3,對它們進行排序, 並且從小到大輸出
要求使用2種方法實現:一、使用if-else分支結構;二、使用java內建模組Arrays的排序方法。
++++++++++++++美麗的分割線+++++++++++++
一、使用if-else分支結構
class Date19_02
{
public static void main(String[] arg){
sortOne();
}
public static void sortOne(){
Scanner sc1 = new Scanner (System.in);
System.out.print("\n請輸入第1個整數:");
int num1 = sc1.nextInt();
System.out.print("輸入的第1個數字:\t"+num1+"\n");
System.out.print("\n請輸入第2個整數:");
Scanner sc2 = new Scanner(System.in);
int num2 = sc2.nextInt();
if (num2 != num1){
System.out.print("輸入的第2個數字:\t"+num2+"\n" );
}else{
System.out.print("輸入的第2個數與第1個重複,請重試\n");
return ;}
System.out.print("\n請輸入第3個整數(輸滿3個即止):");
Scanner sc3 = new Scanner(System.in);
int num3 = sc3.nextInt();
if (num3 != num2){
System.out.print("輸入的第3個數字:\t"+num3+"\n" );}
else{
System.out.print("輸入的第3個數有重複,請重試\n");
return ;}
int smaller=0, bigger=0, max=0; //類變數須在宣告時初始化
if (num1 < num2){smaller = num1; bigger = num2;}
else if(num1 > num2){bigger = num1; smaller = num2;}
if (num3 > bigger){max = num3;}
else{max = bigger;}
System.out.print("\n升序排列數字:\n\t");
System.out.print(smaller+" "+bigger+" "+max);
}
}
++++++++++++++美麗的分割線+++++++++++++
二、使用java內建模組Arrays的排序方法
import java.util.Arrays; //此原始檔的所有匯入須寫在第一個類之前!
class Date19_02
{
public static void main(String[] arg){
sortTwo();
}
public static void sortTwo(){
int[] array1 = new int[3];
for (int x=0; x<array1.length; x++){
Scanner sc = new Scanner(System.in);
System.out.print("\n請輸入整數(輸滿3個即止):");
int num1 = sc.nextInt();
System.out.print("輸入的第"+(x+1)+"個數字:"+num1);
array1[x] = num1;
}
Arrays.sort(array1); //使用java標準庫的排序功能模組
System.out.print("\n\t小==>大排列:\n");
for (int y=0; y<array1.length; y++){
System.out.print(array1[y]+" "); //升序排列後,輸出
}
}
}
要求使用2種方法實現:一、使用if-else分支結構;二、使用java內建模組Arrays的排序方法。
++++++++++++++美麗的分割線+++++++++++++
一、使用if-else分支結構
class Date19_02
{
public static void main(String[] arg){
sortOne();
}
public static void sortOne(){
Scanner sc1 = new Scanner
System.out.print("\n請輸入第1個整數:");
int num1 = sc1.nextInt();
System.out.print("輸入的第1個數字:\t"+num1+"\n");
System.out.print("\n請輸入第2個整數:");
Scanner sc2 = new Scanner(System.in);
int num2 = sc2.nextInt();
if (num2 != num1){
System.out.print("輸入的第2個數字:\t"+num2+"\n"
}else{
System.out.print("輸入的第2個數與第1個重複,請重試\n");
return ;}
System.out.print("\n請輸入第3個整數(輸滿3個即止):");
Scanner sc3 = new Scanner(System.in);
int num3 = sc3.nextInt();
if (num3 != num2){
System.out.print("輸入的第3個數字:\t"+num3+"\n"
else{
System.out.print("輸入的第3個數有重複,請重試\n");
return ;}
int smaller=0, bigger=0, max=0; //類變數須在宣告時初始化
if (num1 < num2){smaller = num1; bigger = num2;}
else if(num1 > num2){bigger = num1; smaller = num2;}
if (num3 > bigger){max = num3;}
else{max = bigger;}
System.out.print("\n升序排列數字:\n\t");
System.out.print(smaller+" "+bigger+" "+max);
}
}
++++++++++++++美麗的分割線+++++++++++++
二、使用java內建模組Arrays的排序方法
import java.util.Arrays; //此原始檔的所有匯入須寫在第一個類之前!
class Date19_02
{
public static void main(String[] arg){
sortTwo();
}
public static void sortTwo(){
int[] array1 = new int[3];
for (int x=0; x<array1.length; x++){
Scanner sc = new Scanner(System.in);
System.out.print("\n請輸入整數(輸滿3個即止):");
int num1 = sc.nextInt();
System.out.print("輸入的第"+(x+1)+"個數字:"+num1);
array1[x] = num1;
}
Arrays.sort(array1); //使用java標準庫的排序功能模組
System.out.print("\n\t小==>大排列:\n");
for (int y=0; y<array1.length; y++){
System.out.print(array1[y]+" "); //升序排列後,輸出
}
}
}