java數組_6 _Arrays類
- 數組的工具類java.util.Arrays
- 由于數組對象本身并沒有什麼方法可以供我們調用,但API中提供了一個工具類Arrays供我們使用,進而可以對資料對象進行一些基本的操作。
- 檢視JDK幫助文檔
- Arrays類中的方法都是static修飾的靜态方法,在使用的時候可以直接使用類名進行調用,而”不用"使用對象來調用(注意:是"不用”而不是“不能")
- 具有以下常用功能:
- 給數組指派:通過fill方法。
- 對數組排序:通過sort方法,按升序。
- 比較數組:通過equals方法比較數組中元素值是否相等。
- 查找數組元素: 通過binarySearch方法能對排序好的數組進行二分查找法操作。
package com.wlw.arrays;
import java.util.Arrays;
public class ArraysDemo06 {
public static void main(String[] args) {
int[] a = {1,31,23,34,346,685,63,2,5,68};
int[] b = {1,31,23,34,346,685,63,2,5,68};
System.out.println(a); // 對象的hashcode [I@4554617c
//列印數組元素 Arrays.toString()
System.out.println(Arrays.toString(a));
ArraysDemo06 demo06 = new ArraysDemo06();
demo06.printArrays(a); //這是方法沒有加static的使用方法
System.out.println();
//sort 排序(升序)
Arrays.sort(a);
System.out.println(Arrays.toString(a));
//判斷是否相等
System.out.println(Arrays.equals(a,b)); //false
//二分查找法
int i = Arrays.binarySearch(a,346);
System.out.println(i + " "+a[i]);
//填充 fill
Arrays.fill(a,-1);
System.out.println("填充後:"+Arrays.toString(a));
}
//列印數組元素
public void printArrays(int[] arrays){
for (int i = 0; i < arrays.length; i++) {
if (i == 0) {
System.out.print("[");
System.out.print(arrays[i] + ", ");
} else if (i == arrays.length -1 ) {
System.out.print(arrays[i] +"]");
} else {
System.out.print(arrays[i] + ", ");
}
}
}
}
/*輸出結果
[I@4554617c
[1, 31, 23, 34, 346, 685, 63, 2, 5, 68]
[1, 31, 23, 34, 346, 685, 63, 2, 5, 68]
[1, 2, 5, 23, 31, 34, 63, 68, 346, 685]
false
8 346
填充後:[-1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
*/