2
从键盘输入一组整型数组并保存,对该数组进行排序,并显示排序后的数组。
几种常用的JAVA数组排序方法的整合。
法一:Arrays.sort()
Arrays.sort()排序方法在java中是最简单且最常用的排序方法。
int []arr1= {45,34,59,55};
Arrays.sort(arr1);
调用此方法的时候,需要引入import java.util.Arrays包。
法二:冒泡排序
简单来说,冒泡排序就是重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。
//array[]为待排序数组,n为数组长度
void BubbleSort(int array[], int n)
{
int i, j, k;
for(i=0; i<n-1; i++)
for(j=0; j<n-1-i; j++)
{
if(array[j]>array[j+1])
{
k=array[j];
array[j]=array[j+1];
array[j+1]=k;
}
}
}
import java.util.Arrays;
import java.util.Scanner;
class homework4_2
{
public static void main (String aers[ ])
{
int arr1[ ]= new int [100];
int a = 0;
Scanner reader = new Scanner(System.in);
System.out.println ("输入x(回车确认):");
while(reader.hasNextInt()){
System.out.println ("输入x(回车确认):");
int x = reader.nextInt();
arr1[a] = x;
a = a+1;
}
int arr2[] = new int[a];
for(int i = 0;i<a;i++){
System.out.print(arr1[i]+" "); //未排序时
arr2[i] = arr1[i];
}
System.out.println();
Arrays.sort(arr2);
for(int l = 0;l<a;l++){
System.out.print(arr2[l]+" ");
}
System.out.println();
int n,j,k; //冒泡排序
for(n = 0;n<a-1;n++)
{
for(j = 0;j<a-1-n;j++)
{
if(arr2[j]>arr2[j+1]){
k = arr2[j];
arr2[j] = arr2[j+1];
arr2[j+1] = k;}
}
}
for(int c = 0;c<a;c++){
System.out.print(arr2[c]+" ");
}
}
}