目錄
前言
一、Arrays是什么?
二、常用方法
1.toString():將數(shù)組轉(zhuǎn)換為字符串形式。
2.?binarySearch():在已排序的數(shù)組中查找指定元素的索引。
3.fill():將數(shù)組的所有元素都設(shè)置為指定值。
4.?copyOf():將一個數(shù)組的部分或全部元素復(fù)制到一個新數(shù)組中。
?5.sort(數(shù)組):對數(shù)組進(jìn)行排序。
6.sort(數(shù)組,排序規(guī)則):對數(shù)組進(jìn)行排序。
前言
這篇博客給大家介紹一下操作數(shù)組的工具類Arrays
一、Arrays是什么?
在Java中,Arrays是一個提供了各種數(shù)組操作的工具類。它包含了許多靜態(tài)方法,用于對數(shù)組進(jìn)行排序、搜索、復(fù)制、填充等操作。Arrays類可以用于處理基本類型數(shù)組和對象類型數(shù)組。
Arrays類提供的方法可以大大簡化對數(shù)組的操作,使得代碼更加簡潔和高效。它可以幫助開發(fā)人員快速完成常見的數(shù)組操作,而不需要手動編寫復(fù)雜的循環(huán)和邏輯。
二、常用方法
- toString():將數(shù)組轉(zhuǎn)換為字符串形式。
- binarySearch():在已排序的數(shù)組中查找指定元素的索引。
- fill():將數(shù)組的所有元素都設(shè)置為指定值。
- copyOf():將一個數(shù)組的部分或全部元素復(fù)制到一個新數(shù)組中。
- copyOfRange():將一個數(shù)組的指定范圍內(nèi)的元素復(fù)制到一個新數(shù)組中。
- sort(數(shù)組):對數(shù)組進(jìn)行排序。
- sort(數(shù)組,排序規(guī)則):對數(shù)組進(jìn)行排序。
1.toString():將數(shù)組轉(zhuǎn)換為字符串形式。
?底層按照StringBuilder拼接
2.?binarySearch():在已排序的數(shù)組中查找指定元素的索引。
?該方法要求傳入的數(shù)組是升序的
實現(xiàn)也就是普通的二分查找的實現(xiàn),不在多說
3.fill():將數(shù)組的所有元素都設(shè)置為指定值。
4.?copyOf():將一個數(shù)組的部分或全部元素復(fù)制到一個新數(shù)組中。
?底層通過System類中的arraycopy實現(xiàn)
?copyOfRange()沒什么可說,就是加了一個限定范圍,值得一提的是拷貝的索引并不包含結(jié)束索引
即to索引位置的元素不在被拷貝之列
?5.sort(數(shù)組):對數(shù)組進(jìn)行排序。
值得一提的是,如果在不指定比較規(guī)則的情況下,該排序只能對已有類型進(jìn)行排序,因為已有類型的比較規(guī)則已經(jīng)被提前寫好,如果我們想要對自定義類型進(jìn)行排序或者改變對已有類型的排序規(guī)則,那么就可以在參數(shù)中傳遞一個比較器對象,如果是自定義類型的話,還可以使其實現(xiàn)Comparable接口重寫compareTo方法,這也可以作為一種備選方案
6.sort(數(shù)組,排序規(guī)則):對數(shù)組進(jìn)行排序。
定義Student類?String name;?int age;?
為了簡單起見,我們指定比較規(guī)則為按照age的大小比較
關(guān)于匿名內(nèi)部類,和Comparator我的博客有介紹,在這里不再多說
比較有意思的是sort的底層原理文章來源:http://www.zghlxwxcb.cn/news/detail-731010.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-731010.html
到了這里,關(guān)于java - 數(shù)組工具類Arrays的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!