語言

Arrays.Sort 方法

定義

多載

名稱 Description
Sort(Object[], Int32, Int32, IComparator)

根據指定比較器所誘導的順序,排序指定物件陣列的指定範圍。

Sort(Byte[], Int32, Int32)

將陣列指定的範圍依升序排序。

Sort(Single[], Int32, Int32)

將陣列指定的範圍依升序排序。

Sort(Int64[], Int32, Int32)

將陣列指定的範圍依升序排序。

Sort(Int32[], Int32, Int32)

將陣列指定的範圍依升序排序。

Sort(Int16[], Int32, Int32)

將陣列指定的範圍依升序排序。

Sort(Double[], Int32, Int32)

將陣列指定的範圍依升序排序。

Sort(Char[], Int32, Int32)

將陣列指定的範圍依升序排序。

Sort(Object[], Int32, Int32)

根據元素的可比自然排序,將指定物件陣列的指定範圍排序為升序。

Sort(Single[])

將指定的陣列依升序排序。

Sort(Int64[])

將指定的陣列依升序排序。

Sort(Int32[])

將指定的陣列依升序排序。

Sort(Int16[])

將指定的陣列依升序排序。

Sort(Double[])

將指定的陣列依升序排序。

Sort(Char[])

將指定的陣列依升序排序。

Sort(Byte[])

將指定的陣列依升序排序。

Sort(Object[])

根據其元素的可比較自然排序,將指定的物件陣列排序為升序。

Sort(Object[], IComparator)

根據指定比較器誘導的順序,對指定的物件陣列進行排序。

Sort(Object[], Int32, Int32, IComparator)

根據指定比較器所誘導的順序,排序指定物件陣列的指定範圍。

[Android.Runtime.Register("sort", "([Ljava/lang/Object;IILjava/util/Comparator;)V", "")]
[Java.Interop.JavaTypeParameters(new System.String[] { "T" })]
public static void Sort(Java.Lang.Object[] a, int fromIndex, int toIndex, Java.Util.IComparator? c);
[<Android.Runtime.Register("sort", "([Ljava/lang/Object;IILjava/util/Comparator;)V", "")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T" })>]
static member Sort : Java.Lang.Object[] * int * int * Java.Util.IComparator -> unit

參數

a
Object[]

待排序的陣列

fromIndex
Int32

第一個要排序的元素(包含索引)的索引

toIndex
Int32

最後一個要排序的元素(排他元素)的索引

c
IComparator

比較器用來決定陣列的順序。 一個 null 值表示應使用元素的可比自然排序。

屬性

備註

根據指定比較器所誘導的順序,排序指定物件陣列的指定範圍。 待排序範圍從索引 fromIndex、包含到 toIndex索引、排他。 (若 fromIndex==toIndex,待排序範圍為空。)該範圍內的所有元素必須由指定的比較器相互比較(即c.compare(e1, e2)不得對該範圍內的任何元素e1e2拋出 aClassCastException)。

此排序 保證穩定:相同元素不會因排序而重新排序。

實作說明:此實作是一種穩定、自適應且可迭代的合併排序,當輸入陣列部分排序時,所需的 lg(n) 次比較遠少於 n 次;而當輸入陣列隨機排序時,則具備傳統合併排序的效能。 若輸入陣列幾乎已排序,實作約需 n 次比較。 暫存儲存需求從接近排序輸入陣列的小型常數,到隨機排序輸入陣列的 n/2 個物件參考不等。

該實作同時利用輸入陣列中的升序與降序,且能利用同一輸入陣列不同部分的升序與降序。 它非常適合合併兩個或以上已排序的陣列:只需將陣列串接並排序所得陣列即可。

此實作是從 Tim Peters 為 Python 設計的清單排序(TimSort)改編而來。 它採用了 Peter McIlroy 於 1993 年 1 月發表於第四屆 ACM-SIAM 離散演算法研討會論文集,頁 467-474 的〈樂觀排序與資訊理論複雜性〉中的技術。

Java 文件 java.util.Arrays.sort(T[], int, int, java.util.Comparator<? super T>)

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於

Sort(Byte[], Int32, Int32)

將陣列指定的範圍依升序排序。

[Android.Runtime.Register("sort", "([BII)V", "")]
public static void Sort(byte[] a, int fromIndex, int toIndex);
[<Android.Runtime.Register("sort", "([BII)V", "")>]
static member Sort : byte[] * int * int -> unit

參數

a
Byte[]

待排序的陣列

fromIndex
Int32

第一個元素的索引,包含,要排序

toIndex
Int32

最後一個要排序的元素的索引,排他性

屬性

例外狀況

如果 start > end

start end > array.length

備註

將陣列指定的範圍依升序排序。 待排序範圍從索引 fromIndex、包含,延伸到 toIndex索引 、排他。 若 fromIndex == toIndex,待排序範圍為空。

Java 文件 java.util.Arrays.sort(byte[], int, int)

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於

Sort(Single[], Int32, Int32)

將陣列指定的範圍依升序排序。

[Android.Runtime.Register("sort", "([FII)V", "")]
public static void Sort(float[] a, int fromIndex, int toIndex);
[<Android.Runtime.Register("sort", "([FII)V", "")>]
static member Sort : single[] * int * int -> unit

參數

a
Single[]

待排序的陣列

fromIndex
Int32

第一個元素的索引,包含,要排序

toIndex
Int32

最後一個要排序的元素的索引,排他性

屬性

例外狀況

如果 start > end

start end > array.length

備註

將陣列指定的範圍依升序排序。 待排序範圍從索引 fromIndex、包含,延伸到 toIndex索引 、排他。 若 fromIndex == toIndex,待排序範圍為空。

<關係並不提供所有浮點值的全序:-0.0f == 0.0ftrueFloat.NaN值與任何值(甚至自身)都不比任何值比較、不小於、不等於。 此方法使用方法所施加 Float#compareTo的總階數: -0.0f 被視為小於值 0.0fFloat.NaN 且視為大於其他任何值,且所有 Float.NaN 值皆視為相等。

Java 文件 java.util.Arrays.sort(float[], int, int)

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

另請參閱

適用於

Sort(Int64[], Int32, Int32)

將陣列指定的範圍依升序排序。

[Android.Runtime.Register("sort", "([JII)V", "")]
public static void Sort(long[] a, int fromIndex, int toIndex);
[<Android.Runtime.Register("sort", "([JII)V", "")>]
static member Sort : int64[] * int * int -> unit

參數

a
Int64[]

待排序的陣列

fromIndex
Int32

第一個元素的索引,包含,要排序

toIndex
Int32

最後一個要排序的元素的索引,排他性

屬性

例外狀況

如果 start > end

start end > array.length

備註

將陣列指定的範圍依升序排序。 待排序範圍從索引 fromIndex、包含,延伸到 toIndex索引 、排他。 若 fromIndex == toIndex,待排序範圍為空。

Java 文件 java.util.Arrays.sort(long[], int, int)

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於

Sort(Int32[], Int32, Int32)

將陣列指定的範圍依升序排序。

[Android.Runtime.Register("sort", "([III)V", "")]
public static void Sort(int[] a, int fromIndex, int toIndex);
[<Android.Runtime.Register("sort", "([III)V", "")>]
static member Sort : int[] * int * int -> unit

參數

a
Int32[]

待排序的陣列

fromIndex
Int32

第一個元素的索引,包含,要排序

toIndex
Int32

最後一個要排序的元素的索引,排他性

屬性

例外狀況

如果 start > end

start end > array.length

備註

將陣列指定的範圍依升序排序。 待排序範圍從索引 fromIndex、包含,延伸到 toIndex索引 、排他。 若 fromIndex == toIndex,待排序範圍為空。

Java 文件 java.util.Arrays.sort(int[], int, int)

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於

Sort(Int16[], Int32, Int32)

將陣列指定的範圍依升序排序。

[Android.Runtime.Register("sort", "([SII)V", "")]
public static void Sort(short[] a, int fromIndex, int toIndex);
[<Android.Runtime.Register("sort", "([SII)V", "")>]
static member Sort : int16[] * int * int -> unit

參數

a
Int16[]

待排序的陣列

fromIndex
Int32

第一個元素的索引,包含,要排序

toIndex
Int32

最後一個要排序的元素的索引,排他性

屬性

例外狀況

如果 start > end

start end > array.length

備註

將陣列指定的範圍依升序排序。 待排序範圍從索引 fromIndex、包含,延伸到 toIndex索引 、排他。 若 fromIndex == toIndex,待排序範圍為空。

Java 文件 java.util.Arrays.sort(short[], int, int)

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於

Sort(Double[], Int32, Int32)

將陣列指定的範圍依升序排序。

[Android.Runtime.Register("sort", "([DII)V", "")]
public static void Sort(double[] a, int fromIndex, int toIndex);
[<Android.Runtime.Register("sort", "([DII)V", "")>]
static member Sort : double[] * int * int -> unit

參數

a
Double[]

待排序的陣列

fromIndex
Int32

第一個元素的索引,包含,要排序

toIndex
Int32

最後一個要排序的元素的索引,排他性

屬性

例外狀況

如果 start > end

start end > array.length

備註

將陣列指定的範圍依升序排序。 待排序範圍從索引 fromIndex、包含,延伸到 toIndex索引 、排他。 若 fromIndex == toIndex,待排序範圍為空。

<關係並不對所有雙重值提供全序:-0.0d == 0.0dtrueDouble.NaN一個值既不比任何值小於、大於或等於任何值,甚至連自身也不相等。 此方法使用方法所施加 Double#compareTo的總階數: -0.0d 被視為小於值 0.0dDouble.NaN 且視為大於其他任何值,且所有 Double.NaN 值皆視為相等。

Java 文件 java.util.Arrays.sort(double[], int, int)

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

另請參閱

適用於

Sort(Char[], Int32, Int32)

將陣列指定的範圍依升序排序。

[Android.Runtime.Register("sort", "([CII)V", "")]
public static void Sort(char[] a, int fromIndex, int toIndex);
[<Android.Runtime.Register("sort", "([CII)V", "")>]
static member Sort : char[] * int * int -> unit

參數

a
Char[]

待排序的陣列

fromIndex
Int32

第一個元素的索引,包含,要排序

toIndex
Int32

最後一個要排序的元素的索引,排他性

屬性

例外狀況

如果 start > end

start end > array.length

備註

將陣列指定的範圍依升序排序。 待排序範圍從索引 fromIndex、包含,延伸到 toIndex索引 、排他。 若 fromIndex == toIndex,待排序範圍為空。

Java 文件 java.util.Arrays.sort(char[], int, int)

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於

Sort(Object[], Int32, Int32)

根據元素的可比自然排序,將指定物件陣列的指定範圍排序為升序。

[Android.Runtime.Register("sort", "([Ljava/lang/Object;II)V", "")]
public static void Sort(Java.Lang.Object[] a, int fromIndex, int toIndex);
[<Android.Runtime.Register("sort", "([Ljava/lang/Object;II)V", "")>]
static member Sort : Java.Lang.Object[] * int * int -> unit

參數

a
Object[]

待排序的陣列

fromIndex
Int32

第一個要排序的元素(包含索引)的索引

toIndex
Int32

最後一個要排序的元素(排他元素)的索引

屬性

例外狀況

若有元素未實作 Comparable,或對 compareTo 任意元素對拋出。

如果 start > end

start end > array.length

備註

根據元素的可比自然排序,將指定物件陣列的指定範圍排序為升序。 待排序範圍從索引 fromIndex、包含到 toIndex索引、排他。 (若 fromIndex==toIndex,待排序範圍為空。)此範圍內的所有元素都必須實作介面。Comparable 此外,該範圍內的所有元素必須彼此可比較(即e1.compareTo(e2)不得對陣列中任何元素 e1e2 拋出 aClassCastException)。

此排序 保證穩定:相同元素不會因排序而重新排序。

實作說明:此實作是一種穩定、自適應且可迭代的合併排序,當輸入陣列部分排序時,所需的 lg(n) 次比較遠少於 n 次;而當輸入陣列隨機排序時,則具備傳統合併排序的效能。 若輸入陣列幾乎已排序,實作約需 n 次比較。 暫存儲存需求從接近排序輸入陣列的小型常數,到隨機排序輸入陣列的 n/2 個物件參考不等。

該實作同時利用輸入陣列中的升序與降序,且能利用同一輸入陣列不同部分的升序與降序。 它非常適合合併兩個或以上已排序的陣列:只需將陣列串接並排序所得陣列即可。

此實作是從 Tim Peters 為 Python 設計的清單排序(TimSort)改編而來。 它採用了 Peter McIlroy 於 1993 年 1 月發表於第四屆 ACM-SIAM 離散演算法研討會論文集,頁 467-474 的〈樂觀排序與資訊理論複雜性〉中的技術。

Java 文件 java.util.Arrays.sort(java.lang.Object[], int, int)

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於

Sort(Single[])

將指定的陣列依升序排序。

[Android.Runtime.Register("sort", "([F)V", "")]
public static void Sort(float[] a);
[<Android.Runtime.Register("sort", "([F)V", "")>]
static member Sort : single[] -> unit

參數

a
Single[]

待排序的陣列

屬性

備註

將指定的陣列依升序排序。

<關係並不提供所有浮點值的全序:-0.0f == 0.0ftrueFloat.NaN值與任何值(甚至自身)都不比任何值比較、不小於、不等於。 此方法使用方法所施加 Float#compareTo的總階數: -0.0f 被視為小於值 0.0fFloat.NaN 且視為大於其他任何值,且所有 Float.NaN 值皆視為相等。

Java 文件 java.util.Arrays.sort(float[])

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

另請參閱

  • <xref:Java.Util.Arrays.Sort(System.Single%5b%5d%2c+System.Int32%2c+System.Int32)>

適用於

Sort(Int64[])

將指定的陣列依升序排序。

[Android.Runtime.Register("sort", "([J)V", "")]
public static void Sort(long[] a);
[<Android.Runtime.Register("sort", "([J)V", "")>]
static member Sort : int64[] -> unit

參數

a
Int64[]

待排序的陣列

屬性

備註

將指定的陣列依升序排序。

Java 文件 java.util.Arrays.sort(long[])

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於

Sort(Int32[])

將指定的陣列依升序排序。

[Android.Runtime.Register("sort", "([I)V", "")]
public static void Sort(int[] a);
[<Android.Runtime.Register("sort", "([I)V", "")>]
static member Sort : int[] -> unit

參數

a
Int32[]

待排序的陣列

屬性

備註

將指定的陣列依升序排序。

Java 文件 java.util.Arrays.sort(int[])

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於

Sort(Int16[])

將指定的陣列依升序排序。

[Android.Runtime.Register("sort", "([S)V", "")]
public static void Sort(short[] a);
[<Android.Runtime.Register("sort", "([S)V", "")>]
static member Sort : int16[] -> unit

參數

a
Int16[]

待排序的陣列

屬性

備註

將指定的陣列依升序排序。

Java 文件 java.util.Arrays.sort(short[])

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於

Sort(Double[])

將指定的陣列依升序排序。

[Android.Runtime.Register("sort", "([D)V", "")]
public static void Sort(double[] a);
[<Android.Runtime.Register("sort", "([D)V", "")>]
static member Sort : double[] -> unit

參數

a
Double[]

待排序的陣列

屬性

備註

將指定的陣列依升序排序。

<關係並不對所有雙重值提供全序:-0.0d == 0.0dtrueDouble.NaN一個值既不比任何值小於、大於或等於任何值,甚至連自身也不相等。 此方法使用方法所施加 Double#compareTo的總階數: -0.0d 被視為小於值 0.0dDouble.NaN 且視為大於其他任何值,且所有 Double.NaN 值皆視為相等。

Java 文件 java.util.Arrays.sort(double[])

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

另請參閱

  • <xref:Java.Util.Arrays.Sort(System.Double%5b%5d%2c+System.Int32%2c+System.Int32)>

適用於

Sort(Char[])

將指定的陣列依升序排序。

[Android.Runtime.Register("sort", "([C)V", "")]
public static void Sort(char[] a);
[<Android.Runtime.Register("sort", "([C)V", "")>]
static member Sort : char[] -> unit

參數

a
Char[]

待排序的陣列

屬性

備註

將指定的陣列依升序排序。

Java 文件 java.util.Arrays.sort(char[])

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於

Sort(Byte[])

將指定的陣列依升序排序。

[Android.Runtime.Register("sort", "([B)V", "")]
public static void Sort(byte[] a);
[<Android.Runtime.Register("sort", "([B)V", "")>]
static member Sort : byte[] -> unit

參數

a
Byte[]

待排序的陣列

屬性

備註

將指定的陣列依升序排序。

Java 文件 java.util.Arrays.sort(byte[])

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於

Sort(Object[])

根據其元素的可比較自然排序,將指定的物件陣列排序為升序。

[Android.Runtime.Register("sort", "([Ljava/lang/Object;)V", "")]
public static void Sort(Java.Lang.Object[] a);
[<Android.Runtime.Register("sort", "([Ljava/lang/Object;)V", "")>]
static member Sort : Java.Lang.Object[] -> unit

參數

a
Object[]

待排序的陣列

屬性

例外狀況

若有元素未實作 Comparable,或對 compareTo 任意元素對拋出。

備註

根據其元素的可比較自然排序,將指定的物件陣列排序為升序。 陣列中的所有元素都必須實作該 Comparable 介面。 此外,陣列中的所有元素必須彼此可比(也就是說,e1.compareTo(e2)陣列中的任何元素e1e2不得拋出 aClassCastException)。

此排序 保證穩定:相同元素不會因排序而重新排序。

實作說明:此實作是一種穩定、自適應且可迭代的合併排序,當輸入陣列部分排序時,所需的 lg(n) 次比較遠少於 n 次;而當輸入陣列隨機排序時,則具備傳統合併排序的效能。 若輸入陣列幾乎已排序,實作約需 n 次比較。 暫存儲存需求從接近排序輸入陣列的小型常數,到隨機排序輸入陣列的 n/2 個物件參考不等。

該實作同時利用輸入陣列中的升序與降序,且能利用同一輸入陣列不同部分的升序與降序。 它非常適合合併兩個或以上已排序的陣列:只需將陣列串接並排序所得陣列即可。

此實作是從 Tim Peters 為 Python 設計的清單排序(TimSort)改編而來。 它採用了 Peter McIlroy 於 1993 年 1 月發表於第四屆 ACM-SIAM 離散演算法研討會論文集,頁 467-474 的〈樂觀排序與資訊理論複雜性〉中的技術。

Java 文件 java.util.Arrays.sort(java.lang.Object[])

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於

Sort(Object[], IComparator)

根據指定比較器誘導的順序,對指定的物件陣列進行排序。

[Android.Runtime.Register("sort", "([Ljava/lang/Object;Ljava/util/Comparator;)V", "")]
[Java.Interop.JavaTypeParameters(new System.String[] { "T" })]
public static void Sort(Java.Lang.Object[] a, Java.Util.IComparator? c);
[<Android.Runtime.Register("sort", "([Ljava/lang/Object;Ljava/util/Comparator;)V", "")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T" })>]
static member Sort : Java.Lang.Object[] * Java.Util.IComparator -> unit

參數

a
Object[]

待排序的陣列

c
IComparator

比較器用來決定陣列的順序。 一個 null 值表示應使用元素的可比自然排序。

屬性

備註

根據指定比較器誘導的順序,對指定的物件陣列進行排序。 陣列中的所有元素必須由指定的比較器相互比較(也就是說,c.compare(e1, e2)陣列中任何元素 e1e2 不得拋出 aClassCastException)。

此排序 保證穩定:相同元素不會因排序而重新排序。

實作說明:此實作是一種穩定、自適應且可迭代的合併排序,當輸入陣列部分排序時,所需的 lg(n) 次比較遠少於 n 次;而當輸入陣列隨機排序時,則具備傳統合併排序的效能。 若輸入陣列幾乎已排序,實作約需 n 次比較。 暫存儲存需求從接近排序輸入陣列的小型常數,到隨機排序輸入陣列的 n/2 個物件參考不等。

該實作同時利用輸入陣列中的升序與降序,且能利用同一輸入陣列不同部分的升序與降序。 它非常適合合併兩個或以上已排序的陣列:只需將陣列串接並排序所得陣列即可。

此實作是從 Tim Peters 為 Python 設計的清單排序(TimSort)改編而來。 它採用了 Peter McIlroy 於 1993 年 1 月發表於第四屆 ACM-SIAM 離散演算法研討會論文集,頁 467-474 的〈樂觀排序與資訊理論複雜性〉中的技術。

Java 文件 java.util.Arrays.sort(T[], java.util.Comparator<? super T>)

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於