Arrays.sort

Arrays.sort

Arrays.sort中文叫數組名,是指sort(byte[] a)和sort(long[] a)兩種排序方法,使用這個兩種方法可以對數字在指定的範圍內排序。這個方法在 java.util這個包裡面,所以在用到的時候需要先將它導入。

簡介

Arrays.sort(*Array) 需加包import java.util.*;或import java.util.Arrays;

Arrays.sort(數組名)為數組排序的操作。

範例

// 以下程式是數組的排序操作,在這裡使用了 sort 方法對數組進行排序

import java.util.*;

public class array004

{

public static void main(String[] args)

{

int a[] = {4,32,45,32,65,32,2} ;

System.out.print("數組排序前的順序:");

for(int i=0;i<a.length;i++)

System.out.print(a[i]+" ");

Arrays.sort(a);//數組的排序方法

System.out.print("\n數組排序後的順序:");

for(int i=0;i<a.length;i++)

System.out.print(a[i]+" ");

System.out.print("\n");

}

}

輸出結果:

數組排序前的順序:4 32 45 32 65 32 2

數組排序後的順序:2 4 32 32 32 45 65

String [] str = {"a","e","f","g","h","i","b","c","d"};
System.out.println(".toString="+Arrays.toString(str));//列印出數組中所有數據
System.out.println(".asList="+Arrays.asList(str));
Arrays.sort(str);//對數組進行排序
System.out.println(".toString="+Arrays.toString(str));//列印排序後數組中所有數據
Arrays.sort(str,Collections.reverseOrder());//對數組進行 倒序
System.out.println(".asList="+Arrays.asList(str));
int flag = Arrays.binarySearch(str, "a");//查找數組中 元素 的位置(數組下標從 0 開始)
System.out.println("b的所在位置:"+flag);
String [] str2 = new String[4];
Arrays.fill(str2, "w");//為數組中每個數據同初值
System.out.println("str2[]="+Arrays.toString(str2));
String [][] s1 = {{"a","b","c","d"},{"a","b","e","f"}};
System.out.println("s1[][]="+Arrays.deepToString(s1));//列印出二維數組中的全部數據

更多Arrays類的詳細使用可以參考引用安安DIY創作室裡面的文章內容。

API文檔

sort

public static void sort(int[] a)對指定的 int 型數組按數字升序進行排序。 參數:a - 要排序的數組

sort

public static void sort(int[] a, int fromIndex, int toIndex)對指定 int 型數組的指定範圍按數字升序進行排序。排序的範圍從索引 fromIndex(包括)一直到索引 toIndex(不包括)。(如果 fromIndex==toIndex,則排序範圍為空。)

該排序算法是一個經過調優的快速排序法,改編自 Jon L. Bentley 和 M. Douglas McIlroy 合著的 Engineering a Sort Function", Software-Practice and Experience Vol. 23(11) P. 1249-1265 (November 1993)。此算法在許多數據集上提供 n*log(n) 性能,這導致其他快速排序會降低二次型性能。

參數:a - 要排序的數組 fromIndex - 要排序的第一個元素的索引(包括) toIndex - 要排序的最後一個元素的索引(不包括) 拋出:IllegalArgumentException- 如果 fromIndex > toIndexArrayIndexOutOfBoundsException- 如果 fromIndex < 0 或 toIndex > a.length

用法

1.sort(byte[] a)

對指定的 byte 型數組按數字升序進行排序。
sort(byte[] a, int fromIndex, int toIndex)
對指定 byte 型數組的指定範圍按數字升序進行排序。
sort(char[] a)
對指定的 char 型數組按數字升序進行排序。
sort(char[] a, int fromIndex, int toIndex)
對指定 char 型數組的指定範圍按數字升序進行排序。
sort(double[] a)
對指定的 double 型數組按數字升序進行排序。
sort(double[] a, int fromIndex, int toIndex)
對指定 double 型數組的指定範圍按數字升序進行排序。
sort(float[] a)
對指定的 float 型數組按數字升序進行排序。
sort(float[] a, int fromIndex, int toIndex)
對指定 float 型數組的指定範圍按數字升序進行排序。
sort(int[] a)
對指定的 int 型數組按數字升序進行排序。
sort(int[] a, int fromIndex, int toIndex)

2.sort(long[] a)

對指定的 long 型數組按數字升序進行排序。
sort(long[] a, int fromIndex, int toIndex)
對指定 long 型數組的指定範圍按數字升序進行排序。
sort(Object[] a)
根據元素的自然順序,對指定對象數組按升序進行排序。
sort(Object[] a, int fromIndex, int toIndex)
根據元素的自然順序,對指定對象數組的指定範圍按升序進行排序。
sort(short[] a)
對指定的 short 型數組按數字升序進行排序。
sort(short[] a, int fromIndex, int toIndex)
對指定 short 型數組的指定範圍按數字升序進行排序。
sort(T[] a, Comparator<? super T> c)
根據指定比較器產生的順序對指定對象數組進行排序。
sort(T[] a, int fromIndex, int toIndex, Comparator<? super T> c)
根據指定比較器產生的順序對指定對象數組的指定範圍進行排序。

相關詞條

熱門詞條

聯絡我們