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

Java中List轉(zhuǎn)Array的兩種主要方式

 更新時(shí)間:2024年06月06日 09:17:27   作者:相思比夢(mèng)長(zhǎng)  
在Java中經(jīng)常遇到需要List與數(shù)組互相轉(zhuǎn)換的場(chǎng)景,這篇文章主要給大家介紹了關(guān)于Java中List轉(zhuǎn)Array的兩種主要方式,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下

一、List轉(zhuǎn)Array介紹

在JAVA編程中,List和Array都是很常見(jiàn)的數(shù)據(jù)類(lèi)型。它們都可以?xún)?chǔ)存多個(gè)相同類(lèi)型的元素,由于使用場(chǎng)景不同,某些情況下需要將List轉(zhuǎn)換成Array。List轉(zhuǎn)換成Array主要有兩種方式:

1. 利用List的toArray()方法;

2. 利用Collection的toArray()方法。

二、List的toArray()方法

List的toArray()方法可以將List類(lèi)型的集合轉(zhuǎn)換為數(shù)組類(lèi)型,其實(shí)現(xiàn)方式如下: 

        List<String> list = new ArrayList<>();
        list.add("Java");
        list.add("Python");
        list.add("JavaScript");

        //String[] strings = new String[list.size()];
        //list.toArray(strings);
        String[] strings = list.toArray(new String[list.size()]);
        System.out.println(Arrays.toString(strings));
        //[Java, Python, JavaScript]

上述代碼中,通過(guò)list.toArray(array)將List類(lèi)型的集合轉(zhuǎn)換成String類(lèi)型的數(shù)組。

需要注意的是,在List類(lèi)型轉(zhuǎn)換成數(shù)組時(shí),需要預(yù)先聲明數(shù)組類(lèi)型及其大小。

三、Collection的toArray()方法

public Object[] toArray();

public <T> T[] toArray(T[] a);

Collection的toArray()方法可以將Collection類(lèi)型的集合轉(zhuǎn)換為數(shù)組類(lèi)型,使用方式如下:

        Collection<String> collection = new ArrayList<>();
        collection.add("Java");
        collection.add("Python");
        collection.add("JavaScript");

        Object[] objects = collection.toArray();
        String[] strings = Arrays.copyOf(objects, objects.length, String[].class);
        System.out.println(Arrays.toString(strings));
        //[Java, Python, JavaScript]

public <T> T[] toArray(T[] a)的使用

        在toArray參數(shù)中直接確定使用什么數(shù)據(jù)類(lèi)型來(lái)接受,T代表數(shù)據(jù)類(lèi)型,[]代表的是數(shù)組,即在toArray()方法中傳入一個(gè)具體數(shù)據(jù)類(lèi)型的數(shù)組即可。直接返回的就是具體數(shù)據(jù)類(lèi)型的數(shù)組對(duì)象。

長(zhǎng)度定義方式一:直接給0即new String[0],如果長(zhǎng)度不夠,系統(tǒng)會(huì)自動(dòng)加長(zhǎng)度,這樣就消耗了系統(tǒng)的資源。

長(zhǎng)度定義方式二:長(zhǎng)度給的過(guò)長(zhǎng),但是這些多余的長(zhǎng)度還在系統(tǒng)中存在,就形成了一個(gè)內(nèi)存的浪費(fèi)。

長(zhǎng)度定義方式三:就是在定義String[]數(shù)組的時(shí)候,使用集合的長(zhǎng)度來(lái)定義數(shù)組的長(zhǎng)度,因?yàn)榧系拈L(zhǎng)度已經(jīng)定了,其元素的個(gè)數(shù)也已經(jīng)定了。

上述代碼實(shí)現(xiàn)了Collection類(lèi)型轉(zhuǎn)換成String類(lèi)型數(shù)組的功能。

需要注意的是,Collection的toArray()方法在執(zhí)行時(shí),需要傳入指定類(lèi)型的類(lèi)型參數(shù),否則會(huì)拋出ClassCastException類(lèi)型的異常。

附:Array 轉(zhuǎn) List

String[] string=new String[]{"s1","s2","s3","s4","s5"};
List<String> li= Arrays.asList(string);
System.out.println(li);

總結(jié)

到此這篇關(guān)于Java中List轉(zhuǎn)Array的兩種主要方式的文章就介紹到這了,更多相關(guān)Java List轉(zhuǎn)Array內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:

相關(guān)文章

  • JNDI具體用法詳解

    JNDI具體用法詳解

    JNDI是java命名和目錄接口,本文主要介紹了JNDI具體用法詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • JAVA注解相關(guān)知識(shí)總結(jié)

    JAVA注解相關(guān)知識(shí)總結(jié)

    這篇文章主要介紹了JAVA注解相關(guān)知識(shí),文中講解非常詳細(xì),代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-06-06
  • seata-1.4.0安裝及在springcloud中使用詳解

    seata-1.4.0安裝及在springcloud中使用詳解

    這篇文章主要介紹了seata-1.4.0安裝及在springcloud中使用,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-12-12
  • 詳解Java中StringBuffer類(lèi)常用方法

    詳解Java中StringBuffer類(lèi)常用方法

    這篇文章主要為大家介紹了java中StringBuffer類(lèi)常用方法
    2016-01-01
  • Java模擬微信來(lái)電提醒示例

    Java模擬微信來(lái)電提醒示例

    這篇文章主要為大家介紹了Java模擬微信來(lái)電提醒示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • IDEA 熱部署設(shè)置(JRebel插件激活)

    IDEA 熱部署設(shè)置(JRebel插件激活)

    這篇文章主要介紹了IDEA 熱部署設(shè)置(JRebel插件激活),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • java8中:: 用法示例(JDK8雙冒號(hào)用法)

    java8中:: 用法示例(JDK8雙冒號(hào)用法)

    這篇文章主要給大家介紹了關(guān)于java8 中的:: 用法(JDK8雙冒號(hào)用法)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用java8具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • JDBC的ResultSet使用說(shuō)明

    JDBC的ResultSet使用說(shuō)明

    今天小編就為大家分享一篇JDBC的ResultSet使用說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-02-02
  • Java中的線程同步全面講解

    Java中的線程同步全面講解

    線程同步指的是在多線程環(huán)境下,通過(guò)某種機(jī)制來(lái)協(xié)調(diào)多個(gè)線程對(duì)共享資源的訪問(wèn),確保在同一時(shí)刻只有一個(gè)線程能夠訪問(wèn)共享資源,從而避免數(shù)據(jù)不一致和其他并發(fā)問(wèn)題,這篇文章主要介紹了Java中線程同步的相關(guān)資料,需要的朋友可以參考下
    2025-07-07
  • Spring MVC下 bootStrap服務(wù)器分頁(yè)代碼

    Spring MVC下 bootStrap服務(wù)器分頁(yè)代碼

    因?yàn)镾pring 對(duì)于ajax直接返回對(duì)象,到了WEB頁(yè)面就轉(zhuǎn)換成json 所以不需要使用JSON轉(zhuǎn)換封裝可以直接使用。接下來(lái)通過(guò)本文給大家分享Spring MVC下 bootStrap服務(wù)器分頁(yè)代碼,需要的的朋友參考下
    2017-03-03

最新評(píng)論

黔西县| 通渭县| 勐海县| 布尔津县| 瓦房店市| 涟水县| 灌南县| 牙克石市| 宿松县| 新巴尔虎右旗| 定结县| 渝中区| 大方县| 淄博市| 灵璧县| 隆化县| 东乡| 元氏县| 贵溪市| 彩票| 周至县| 巩义市| 邢台县| 江门市| 富川| 济源市| 临城县| 衡南县| 抚松县| 临澧县| 彰化市| 海安县| 遂宁市| 虹口区| 十堰市| 克拉玛依市| 安陆市| 通渭县| 平乡县| 逊克县| 郓城县|