1. 程式人生 > >Arrays.sort 按字母書序排序

Arrays.sort 按字母書序排序

java中的陣列排序。[1] Arrays.sort(*Array) 需加包import java.util.*;或import java.util.Arrays; Arrays.sort(陣列名)為陣列排序的操作,但這個方法在 java.util 這個包裡面,所以在用到的時候需要先將它匯入

2範例編輯

// 以下程式是陣列的排序操作,在這裡使用了 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));[2]
//打印出陣列中所有資料
  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");[2]
//查詢陣列中 元素 的位置(陣列下標從 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));[2]//打印出二維陣列中的全部資料 更多Arrays類的詳細使用可以參考引用安安DIY創作室裡面的文章內容。

3API文件編輯

sort public static voidsort(int[] a)對指定的 int 型陣列按數字升序進行排序。引數:a - 要排序的陣列 sort public static voidsort(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

4用法編輯

1.sort(byte[] a) [3]對指定的 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)
  根據指定比較器產生的順序對指定物件陣列的指定範圍進行排序。 上面的我是百度找到的  這裡我講一個例子:關於android字母排序問題,這裡是為了解決我的字典排序問題  我才找了好久才發現的: 想定義一個數組
String[] str= {"ab","ac","fc","fg","fh","i","b","c","d"};
在到oncreate寫入程式碼:
Arrays.sort(str);
		System.out.println(".toString="+Arrays.toString(str));

最後檢視列印的圖片   希望對大家有幫助