亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Java中將 int[] 數(shù)組 轉(zhuǎn)換為 List分享

 更新時(shí)間:2022年12月09日 08:32:10   作者:JadeTal  
這篇文章主要介紹了Java中將 int[] 數(shù)組 轉(zhuǎn)換為 List分享的相關(guān)資料,需要的朋友可以參考下

前言

說(shuō)起數(shù)組轉(zhuǎn)換成 ArrayList,很多同學(xué)第一反應(yīng)就是遍歷數(shù)組,將元素逐個(gè)添加到 ArrayList 中,但是這個(gè)看著就lower,一般不會(huì)這么答。

所以馬上就會(huì)想到Arrays工具類的 asList 方法,如果你這么答,那么恭喜你,答錯(cuò)入坑。

為什么不能用 Arrays 的 asList 方法將 int[] 裝換成 ArrayList

如果此處數(shù)組 int[] 換作是 Integer[] 或者任何一個(gè)引用類型元素的數(shù)組都正確,Arrays 的 asList 方法只能轉(zhuǎn)換引用類型元素的數(shù)組。
asList 方法的源碼就是這么定義的:

    public static <T> List<T> asList(T... a) {
        return new ArrayList<>(a);
    }


    private static class ArrayList<E> extends AbstractList<E>
        implements RandomAccess, java.io.Serializable
    {

注意:Arrays.asList(T... a)返回的List中元素是不可變的。
從源碼可以看出Arrays.asList(T... a)返回的是一個(gè)ArrayList,但是這個(gè)ArrayList是Arrays的內(nèi)部類,不是我們集合框架下的那個(gè)ArrayList。

使用stream進(jìn)行轉(zhuǎn)換(jdk8 推薦)

jdk版本低于1.8不可以使用。

數(shù)組通過(guò) Arrays 工具類的 stream() 方法進(jìn)行流化,獲取 Stream 對(duì)象。boxed()方法是用來(lái)裝箱的。

int[] arys = {1,2,3};
List<Integer> list = Arrays.stream(arys).boxed().collect(Collectors.toList());

要轉(zhuǎn)化為ArrayList還需要進(jìn)行一次強(qiáng)制類型轉(zhuǎn)化

遍歷數(shù)組,逐個(gè)加入元素到List中

可以使用for、增強(qiáng)for循環(huán)、迭代器。
使用for循環(huán)遍歷數(shù)組,性能稍微好那么一丟丟。增強(qiáng)for的本質(zhì)就是迭代器,寫法更加簡(jiǎn)潔。
這里代碼就做展示了。

到此這篇關(guān)于Java中將 int[] 數(shù)組 轉(zhuǎn)換為 List分享的文章就介紹到這了,更多相關(guān)Java中將 int[] 數(shù)組 轉(zhuǎn)換為 List內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論