最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

關(guān)于Arrays.sort()使用的注意事項(xiàng)

 更新時間:2022年05月12日 14:26:03   作者:ZSYL  
這篇文章主要介紹了關(guān)于Arrays.sort()使用的注意事項(xiàng),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

Arrays.sort()使用注意事項(xiàng)

Java中的數(shù)據(jù)類型分為基本數(shù)據(jù)類型和引用數(shù)據(jù)類型

  • int:是基本數(shù)據(jù)類型,Integer 是引用數(shù)據(jù)類型
  • Ingeter:是 int 的包裝類,int 的初值為 0,Ingeter的初值為null。

初始化

int num = 1;
Integer num = new Integer(1);

有了自動裝箱和拆箱,使得對Integer類也可使用:Integer num = 1;

自動裝箱和拆箱

從Java5.0版本以后加入了autoboxing功能;自動“拆箱”和“裝箱”是依靠JDK5的編譯器在編譯期的“預(yù)處理工作”。

自動裝箱:將基本數(shù)據(jù)類型封裝為對象類型,成為一個對象以后就可以調(diào)用對象所聲明的所有的方法。

Arrays.sort()平時經(jīng)常用到:有兩種方式

第一種:將數(shù)組元素倒序

Arrays.sort(array,Collections.reverseOrder());

array 必須為 包裝類對象

第二種:將數(shù)組元素升序or降序

1.重寫比較器 默認(rèn)是升序 

List itemArrays.sort(y,new Comparator<Integer>(){
?? ?@Override
?? ?public int compare(Integer o1, Integer o2) {
?? ??? ?return o2-o1; ?// 反過來是升序
?? ?}
});

2.使用lambada表達(dá)式進(jìn)行代碼簡化

Arrays.sort(array, (o1, o2) -> o2-o1);

在實(shí)際應(yīng)用中我們往往使用 基本數(shù)據(jù)類型 數(shù)組,這時候若使用sort() 就需要將基本數(shù)據(jù)類型轉(zhuǎn)化為引用數(shù)據(jù)類型,否則便會報錯

sort() 方法源碼:

public static <T> void sort(T[] a, Comparator<? super T> c) {
? ?...
?}

因此需要將 int[] 類型數(shù)組包裝為 Integer[] 數(shù)組

// int數(shù)組轉(zhuǎn)為Integer
// 將int數(shù)組轉(zhuǎn)換為Integer數(shù)組
?int[] nums = {1,2,3};
?// 先將int數(shù)組轉(zhuǎn)換為數(shù)值流
?IntStream stream = Arrays.stream(nums);
?// 流中的元素全部裝箱,轉(zhuǎn)換為流 ---->int轉(zhuǎn)為Integer
?Stream<Integer> integerStream = stream.boxed();
?// 將流轉(zhuǎn)換為數(shù)組
?Integer[] integers = integerStream.toArray(Integer[]::new);

最后排序完,需要轉(zhuǎn)化回int[]數(shù)組

Arrays.stream(integers).mapToInt(Integer::valueOf).toArray();

Arrays.sort()降序排列問題

今天對int[ ]使用Arrays.sort()時想使用降序排列,上網(wǎng)一搜都是

Arrays.sort(int[ ], Collections.reverseOrder());

經(jīng)過使用發(fā)現(xiàn),并不能使用。

int[] a={5,7,2,6,8,1,4};
Arrays.sort(a);//a: 1 2 4 5 6 7 8
Arrays.sort(a, Collections.reverseOrder);//報錯

后來經(jīng)過搜索研究發(fā)現(xiàn),此方法支持Object對象

Arrays.sort(Object[ ], Collections.reverseOrder());
Object[] a={5,7,2,6,8,1,4};
Arrays.sort(a);//a: 1 2 4 5 6 7 8
Arrays.sort(a, Collections.reverseOrder());//成功

也可以使用再新建一個同樣大小數(shù)組,從后往前一一賦值

int[] a = {5, 7, 2, 6, 8, 1, 4};
Arrays.sort(a);//a: 1 2 4 5 6 7 8
int[] b = new int[a.length];
for(int i = 0; i < a.length; i++) {//b: 8 7 6 5 4 2 1
?? ?b[i] = a[a.length - i - 1];
}

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 一些java二進(jìn)制的相關(guān)基礎(chǔ)知識

    一些java二進(jìn)制的相關(guān)基礎(chǔ)知識

    這篇文章主要介紹了一些java二進(jìn)制的相關(guān)基礎(chǔ)知識,在Java語言中byte代表最小計(jì)量單位,byte由8位2進(jìn)制數(shù)組成。,需要的朋友可以參考下
    2019-06-06
  • idea創(chuàng)建Spring項(xiàng)目的方法步驟(圖文)

    idea創(chuàng)建Spring項(xiàng)目的方法步驟(圖文)

    這篇文章主要介紹了idea創(chuàng)建Spring項(xiàng)目的方法步驟(圖文),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-01-01
  • SWT(JFace) Menu、Bar...體驗(yàn)代碼

    SWT(JFace) Menu、Bar...體驗(yàn)代碼

    SWT(JFace)體驗(yàn)之Menu、Bar實(shí)現(xiàn)代碼。
    2009-06-06
  • kettle指定jdk8的路徑啟動的實(shí)現(xiàn)

    kettle指定jdk8的路徑啟動的實(shí)現(xiàn)

    本文主要介紹了指定jdk8的路徑啟動的實(shí)現(xiàn),通過修改kettle的配置文件來指定使用jdk8版本啟動,具有一定的參考價值,感興趣的可以了解一下
    2025-03-03
  • 利用AOP實(shí)現(xiàn)系統(tǒng)告警的方法詳解

    利用AOP實(shí)現(xiàn)系統(tǒng)告警的方法詳解

    在開發(fā)的過程中會遇到各種各樣的開發(fā)問題,服務(wù)器宕機(jī)、網(wǎng)絡(luò)抖動、代碼本身的bug等等。針對代碼的bug,我們可以提前預(yù)支,通過發(fā)送告警信息來警示我們?nèi)ジ深A(yù),盡早處理。本文將利用AOP實(shí)現(xiàn)系統(tǒng)告警,需要的可以參考一下
    2022-09-09
  • Java動態(tài)獲取實(shí)現(xiàn)類的方式詳解

    Java動態(tài)獲取實(shí)現(xiàn)類的方式詳解

    這篇文章主要介紹了Java動態(tài)獲取實(shí)現(xiàn)類的方式詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作有一定的參考價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2024-01-01
  • IDEA 如何控制編輯左側(cè)的功能圖標(biāo)ICON(操作步驟)

    IDEA 如何控制編輯左側(cè)的功能圖標(biāo)ICON(操作步驟)

    很多朋友被idea左側(cè)的圖標(biāo)不見了這一問題搞的焦頭爛額,不知道該怎么操作,今天小編就交大家如何控制編輯左側(cè)的功能圖標(biāo) ICON,文字內(nèi)容不多,主要通過兩張截圖給大家說明,感興趣的朋友一起看看吧
    2021-05-05
  • Java中的形式參數(shù)和實(shí)際參數(shù)案例詳解

    Java中的形式參數(shù)和實(shí)際參數(shù)案例詳解

    這篇文章主要介紹了Java中的形式參數(shù)和實(shí)際參數(shù),形參和實(shí)參間的關(guān)系,兩者是在調(diào)用的時候進(jìn)行結(jié)合的,通常實(shí)參會將取值傳遞給形參,形參去之后進(jìn)行函數(shù)過程運(yùn)算,然后可能將某些值經(jīng)過參數(shù)或函數(shù)符號返回給調(diào)用者,需要的朋友可以參考下
    2023-10-10
  • 手把手教你如何在Idea中下載jar包

    手把手教你如何在Idea中下載jar包

    maven依賴的jar包,很多時候同一個jar包會存在多個版本,刪除其中一個后,重新編譯,會把舊jar由加載回來了,下面這篇文章主要給大家介紹了關(guān)于如何在Idea中下載jar包的相關(guān)資料,需要的朋友可以參考下
    2023-06-06
  • 詳解Spring Boot配置使用Logback進(jìn)行日志記錄的實(shí)戰(zhàn)

    詳解Spring Boot配置使用Logback進(jìn)行日志記錄的實(shí)戰(zhàn)

    本篇文章主要介紹了詳解Spring Boot配置使用Logback進(jìn)行日志記錄的實(shí)戰(zhàn),具有一定的參考價值,有興趣的朋友可以了解一下
    2017-07-07

最新評論

灵武市| 五河县| 革吉县| 华安县| 南康市| 都兰县| 桦川县| 沁源县| 大足县| 准格尔旗| 乌拉特前旗| 五华县| 于都县| 麻城市| 囊谦县| 武宣县| 贵南县| 咸阳市| 冕宁县| 桃源县| 米易县| 临漳县| 娱乐| 黄陵县| 清河县| 申扎县| 渭南市| 东兰县| 乐昌市| 南京市| 栖霞市| 灵丘县| 綦江县| 徐汇区| 威宁| 桂东县| 天祝| 横峰县| 温泉县| 南部县| 沾化县|