java中的Arrays這個工具類你真的會用嗎
阿新 • • 發佈:2020-06-29
# Java原始碼系列三-工具類Arrays
今天分享java的原始碼的第三彈,Arrays這個工具類的原始碼。因為近期在複習資料結構,瞭解到Arrays裡面的排序演算法和二分查詢等的實現,收益匪淺,決定研讀一下Arrays這個類的原始碼。不足之處,歡迎在評論區交流和指正。
## 1.認識Arrays這個類:
首先它在java的utils包下,屬於Java Collections Framework中的一員。它的初衷就是一個工具類,封裝了操縱陣列的各種方法,比如排序,二分查詢,陣列的拷貝等等。滿足了我們日常對陣列操做的基本需求,瞭解它的底層實現,不僅能幫助我們更好的使用它,而且還能培養我們更好的程式碼的思維。
## 2.構造方法
因為是一個工具類,所以它的構造方法定義為私有的,且所有的實現方法都是靜態方法。也就是說這個類不能被例項化,通俗的講,就是不能new。只能通過類名來直接呼叫方法(反射除外)。這樣做的目的是強化該類不可實列化的能力,突出該類作為工具類的根本職能。原始碼如下:
```java
// Suppresses default constructor, ensuring non-instantiability.
private Arrays() {}
```
## 3.常用方法的解析
### 3.1快速插入集合元素的方法asList(T... a):
基本使用:
```java
/**
* 陣列轉化為集合
*/
@Test
public void toArrayTest(){