内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

java中l(wèi)ist如何轉為數(shù)組-創(chuàng)新互聯(lián)

這篇文章主要介紹java中l(wèi)ist如何轉為數(shù)組,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

為烏海海南等地區(qū)用戶提供了全套網(wǎng)頁設計制作服務,及烏海海南網(wǎng)站建設行業(yè)解決方案。主營業(yè)務為做網(wǎng)站、成都網(wǎng)站制作、烏海海南網(wǎng)站設計,以傳統(tǒng)方式定制建設網(wǎng)站,并提供域名空間備案等一條龍服務,秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!

java中l(wèi)ist集合轉為數(shù)組的方法:1、使用無參數(shù)toArray方法,語法格式“Object[] toArray();”;2、使用支持泛型的toArray方法,語法格式“

在Java中,經(jīng)常遇到需要List與數(shù)組互相轉換的場景。那么list怎么轉為數(shù)組?下面本篇文章給大家介紹一下。

List轉換成數(shù)組,可以使用List的toArray()或者toArray(T[] a)方法。

List轉換成數(shù)組

List轉換成數(shù)組可以調用toArray方法,

這里有兩個重載的方法,

一般使用第2個帶泛型參數(shù)的方法:

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

2.1.無參數(shù)toArray方法

Object[] toArray();

這個方法將List直接轉為Object[]數(shù)組。

Java初學者喜歡用這個方法,

沒有參數(shù)使用起來很方便,

而且代碼編譯也沒有報錯,

錯誤使用的示例代碼如下:

List<String> strList = new ArrayList<>();
strList.add("list-a");
strList.add("list-b");
String[] strArray = (String[]) strList.toArray();

結果一運行,直接報錯,

不能將Object[]轉化為String[]:

Exception in thread "main" java.lang.ClassCastException: 
[Ljava.lang.Object; cannot be cast to [Ljava.lang.String;

正確使用代碼如下:

List<String> strList = new ArrayList<>();
Object[] strArray = strList.toArray();

得到了一個通常情況下沒啥用的Object[]。

2.2.支持泛型的toArray方法

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

這個方法接收一個類型為 T 的數(shù)組,

注意基本類型是不能作為泛型參數(shù)的。

如果是使用int[] 類型數(shù)組,

需要把 int[] 換成 Integer[] 。

使用的示例代碼如下:

List<String> strList = new ArrayList<>();
strList.add("list-a");
strList.add("list-b");
String[] strArray = strList.toArray(new String[strList.size()]);

2.3.toArray方法入?yún)⒌臄?shù)組大小

針對如下代碼,

分析一下初始化的String數(shù)組的大小size,

和List的大小strList.size()的關系,

對于返回值產(chǎn)生的不同影響:

List<String> strList = new ArrayList<>();
strList.add("list-a");
strList.add("list-b");
String[] strArray1 = new String[size];
String[] strArray2 = strList.toArray(strArray1);

2.3.1.size < strList.size()

現(xiàn)在設置size=0,

小于strList.size()=2,

代碼修改部分如下:

String[] strArray1 = new String[0];

返回的strArray2和strArray1不是同一個對象。

2.3.2.size = strList.size()

現(xiàn)在設置size=strList.size(),

代碼修改部分如下:

String[] strArray1 = new String[strList.size()];

返回的strArray2和strArray1是同一個對象。

所以下面兩塊代碼是等價的,

得到的strArray都是我們期望的結果:

String[] strArray = strList.toArray(new String[strList.size()]);
String[] strArray = new String[strList.size()];
strList.toArray(strArray);

2.3.3.size > strList.size()

現(xiàn)在設置size=strList.size()+1,

代碼修改部分如下:

String[] strArray1 = new String[strList.size()+1];

返回的strArray2和strArray1是同一個對象,

但是數(shù)組的最后一個元素是null,

如果數(shù)組中的元素多于List中的元素,

列表復制完后緊接著的數(shù)組末尾被設置為null,

即strArray1[strList.size()]=null,

這對于調用方確定數(shù)組的真實長度很有用,

如果使用strList.size()+2初始化數(shù)組,

則數(shù)組的倒數(shù)第二個元素是null。

以上是java中l(wèi)ist如何轉為數(shù)組的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

新聞名稱:java中l(wèi)ist如何轉為數(shù)組-創(chuàng)新互聯(lián)
標題來源:http://www.rwnh.cn/article22/cojjjc.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、用戶體驗、手機網(wǎng)站建設、定制網(wǎng)站、域名注冊、全網(wǎng)營銷推廣

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化
九龙城区| 洛南县| 罗甸县| 昌都县| 松溪县| 莒南县| 青岛市| 阳新县| 靖安县| 比如县| 疏勒县| 米泉市| 红安县| 张家界市| 东港市| 延寿县| 吉木萨尔县| 枣阳市| 普陀区| 武清区| 高台县| 凤阳县| 曲水县| 姚安县| 昆明市| 清原| 隆化县| 郓城县| 德江县| 出国| 乡宁县| 祁连县| 永州市| 金寨县| 榆树市| 和政县| 利津县| 高邑县| 聊城市| 达拉特旗| 泗阳县|