一、數組作為常用的數據結構,jdk在Arrays工具類中提供了很多有用的算法,並且根據不同的基本數據類型都有相應的重載,這里只列舉名稱。
| 接口 |
功能 |
說明 |
| asList |
將數組轉換為List |
|
| binarySearch |
二分查找 |
入參必須有序,可以找到返回值》=0,否則返回小於0的值,不一定是-1 |
| copyOf |
從源數組進行復制 |
會截斷或者擴充 |
| copyOfRange |
從源數據進行范圍復制 |
|
| deepEquals |
多維數組的等值判斷 |
|
| deepHashCode |
多維數組的哈希值 |
|
| deepToString |
多維數組的toString |
|
| equals |
根據內容判斷兩個基本類型數組是否相等 |
|
| fill |
將數組填充為初始值 |
|
| hashCode |
根據類型生成基本類型數組的哈希值 |
如果要生成數組的哈希值,需要使用這個函數,而不是直接在數組上取哈希 |
| parallelSort |
並發排序 |
|
| sort |
排序 |
|
二、列表同樣是常用的數據結構,jdk在Collections工具類中也提供了很多有用的算法,當然這里的數據類型都是對象,所以不需要重載,但需要重寫。
| 接口 |
功能 |
說明 |
| addAll |
將元素添加到列表 |
|
| binarySearch |
二分查找 |
查找的列表必須有序,找到值則返回index,否則返回負值,不默認為-1。 |
| copy |
將元素在兩個別表中同步 |
|
| disjoint |
判斷兩個列表是否有相同的元素 |
|
| emptyList |
生成空列表 |
|
| fill |
將列表按指定值填充 |
|
| frequency |
返回指定值在列表中的次數 |
|
| replaceAll |
將列表中的舊值替換為新值 |
|
| sort |
升序排列列表元素 |
|
| synchronized* |
返回線程安全的列表包裝類 |
|
| unmodifiable* |
返回不可修改的列表包裝類 |
|
三、Path是java nio中添加的很重要的類,通過Paths構造Path。
| 接口 |
功能 |
說明 |
| get |
根據字符串返回Path對象 |
|
| get |
根據URI返回Path對象 |
|
Files同樣是java nio中提供的強大的文件工具類。
| 接口 |
功能 |
說明 |
| copy |
兩個文件間的復制 |
|
| createDirectories |
創建目錄 |
|
| createFile |
創建文件 |
|
| createLink |
創建引用 |
|
| createTempDirectory |
創建臨時目錄 |
|
| createTempFile |
創建臨時文件 |
|
| delete |
刪除文件 |
|
| exists |
判斷文件是否存在 |
|
| find |
按照接口查找文件 |
|
| lines |
讀取文件的所有行 |
|
| move |
移動文件 |
|
| isDirectory |
判斷是否是目錄 |
|
| newBufferedReader |
創建BufferedReader |
|
| probeContentType |
判斷文件內容 |
|
| readAllLines |
讀取所有的行 |
|
| setLastModifiedTime |
設置最后時間 |
|
| size |
返回文件大小 |
|
四、其他
Objects
| 接口 |
功能 |
說明 |
| compare |
根據提供的策略判斷兩個對象是否相等 |
|
| deepEquals |
根據對象的實現來判斷對象是否相等 |
|
| hash |
計算多個輸入的哈希值 |
|
TreeMap和TreeSet都是內部有序的,可以方便的獲取最小值。
