學習筆記,僅供參考
Arrays類
Arrays類概述
- 此類包含用來操作數組(比如排序和搜索)的各種方法。
- 在java.util包下,使用Arrays類時,我們需要導包。
成員方法
//數組轉字符串
public static String toString(int[] a)
//排序
public static void sort(int[] a)
//查找元素位置
public static int binarySearch(int[] a,int key)
toString方法
public static String toString(int[] a)
返回指定數組內容的字符串表示形式。字符串表示形式由數組的元素列表組成,括在方括號("[]")中。相鄰元素用字符 “,”(逗號加空格)分隔。
-
參數
- a - 返回其字符串表示形式的數組
-
返回
- a 的字符串表示形式
sort方法
public static void sort(int[] a)
對指定的 int 型數組按數字升序進行排序。該排序算法是一個經過調優的快速排序法
- 參數
- a - 要排序的數組
binarySearch
public static int binarySearch(int[] a,int key)
使用二分搜索法來搜索指定的 int 型數組,以獲得指定的值。必須在進行此調用之前對數組進行排序(通過 sort(int[]) 方法)。如果沒有對數組進行排序,則結果是不確定的。
如果數組包含多個帶有指定值的元素,則無法保證找到的是哪一個。
-
參數
- a - 要搜索的數組
- key - 要搜索的值
-
返回
- 如果它包含在數組中,則返回搜索鍵的索引,否則返回
(- (插入點) - 1)
。插入點 被定義爲將鍵插入數組的那一點:即第一個大於此鍵的元素索引,如果數組中的所有元素都小於指定的鍵,則爲a.length
。注意,這保證了當且僅當此鍵被找到時,返回的值將 >= 0。
- 如果它包含在數組中,則返回搜索鍵的索引,否則返回
舉個例子
package com.guiyang.restudy3;
import java.util.Arrays;
public class D4Arrays {
public static void main(String[] args) {
int[] arr = {33,22,11,44,66,55};
System.out.println(Arrays.toString(arr)); //數組轉字符串
Arrays.sort(arr); //排序
System.out.println(Arrays.toString(arr));
int[] arr2 = {11,22,33,44,55,66};
System.out.println(Arrays.binarySearch(arr2, 22));
System.out.println(Arrays.binarySearch(arr2, 66));
System.out.println(Arrays.binarySearch(arr2, 20)); //-插入點-1
}
}
輸出:
[33, 22, 11, 44, 66, 55]
[11, 22, 33, 44, 55, 66]
1
5
-2