欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

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

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

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

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

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

二、List的toArray()方法

List的toArray()方法可以將List類型的集合轉(zhuǎn)換為數(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]

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

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

三、Collection的toArray()方法

public Object[] toArray();

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

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

        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ù)類型來接受,T代表數(shù)據(jù)類型,[]代表的是數(shù)組,即在toArray()方法中傳入一個具體數(shù)據(jù)類型的數(shù)組即可。直接返回的就是具體數(shù)據(jù)類型的數(shù)組對象。

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

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

長度定義方式三:就是在定義String[]數(shù)組的時候,使用集合的長度來定義數(shù)組的長度,因為集合的長度已經(jīng)定了,其元素的個數(shù)也已經(jīng)定了。

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

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

附: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)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:

相關(guān)文章

  • java實現(xiàn)文件上傳和下載

    java實現(xiàn)文件上傳和下載

    這篇文章主要為大家詳細(xì)介紹了java實現(xiàn)文件上傳和下載,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • JAVA如何獲取工程下的文件

    JAVA如何獲取工程下的文件

    這篇文章主要介紹了JAVA如何獲取工程下的文件,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-08-08
  • mybatis一對多查詢功能

    mybatis一對多查詢功能

    這篇文章主要介紹了mybatis一對多查詢功能,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-02-02
  • SpringBoot+layuimini實現(xiàn)左側(cè)菜單動態(tài)展示的示例代碼

    SpringBoot+layuimini實現(xiàn)左側(cè)菜單動態(tài)展示的示例代碼

    Layuimini是Layui的升級版,它是專業(yè)做后臺頁面的框架,而且是適合PC端和移動端,以下地址可以在PC端顯示,也可以在手機(jī)上顯示,只不過會做自適應(yīng),本文將給大家介紹了SpringBoot+layuimini實現(xiàn)左側(cè)菜單動態(tài)展示的方法,需要的朋友可以參考下
    2024-04-04
  • Java的List集合框架之Vector詳細(xì)解析

    Java的List集合框架之Vector詳細(xì)解析

    這篇文章主要介紹了Java的List集合框架之Vector詳細(xì)解析,List接口繼承Collection,Collection繼承于Iterable,List接口實現(xiàn)類分為Vector、ArrayList、LinkedList,Vector底層是一個Object數(shù)組,需要的朋友可以參考下
    2023-11-11
  • Java?Optional用法面試題精講

    Java?Optional用法面試題精講

    這篇文章主要為大家介紹了Java?Optional用法面試題精講,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-09-09
  • Spring MVC中自定義攔截器的實例講解

    Spring MVC中自定義攔截器的實例講解

    下面小編就為大家?guī)硪黄猄pring MVC中自定義攔截器的實例講解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • 詳解Kotlin 高階函數(shù) 與 Lambda 表達(dá)式

    詳解Kotlin 高階函數(shù) 與 Lambda 表達(dá)式

    這篇文章主要介紹了詳解Kotlin 高階函數(shù) 與 Lambda 表達(dá)式的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • 如何基于java或js獲取URL返回狀態(tài)碼

    如何基于java或js獲取URL返回狀態(tài)碼

    這篇文章主要介紹了如何基于java或js獲取URL返回狀態(tài)碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-11-11
  • 精通Java接口的使用與原理

    精通Java接口的使用與原理

    接口,在JAVA編程語言中是一個抽象類型,是抽象方法的集合,接口通常以interface來聲明。一個類通過繼承接口的方式,從而來繼承接口的抽象方法
    2022-03-03

最新評論