av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

java - 關于將Array轉換成ArrayList的警告

瀏覽:74日期:2023-11-07 14:59:30

問題描述

java - 關于將Array轉換成ArrayList的警告

package com.demo.array;import java.util.ArrayList;import java.util.Arrays;/** * 關于數組的演示 * * @author Captain * */public class ArrayDemo { public static void main(String[] args) {// 聲明數組int[] arr = { 1, 10, 8 };// 輸出測試數組System.out.println('測試的數組為:' + Arrays.toString(arr));// 通過下角標訪問元素,數組的下角標是從0開始的System.out.println('通過數組的下角標訪問元素,元素的下角標從0開始,下角標為0的元素是:' + arr[0]);// 將Array 轉換成 ArraylistArrayList<String> arrayList = new ArrayList<String>(Arrays.asList(arr)); }}

問題解答

回答1:

asList 是個泛型,可變參數的函數,所以傳入數組的時候,這個數組如果是基本類型數據,會被當作一個對象處理,題中就是 int[]。如果數據定義成 Integer[] 的,在 asList 的時候會被當作多個可變參數展開。

另外一個問題在于,就算是 Integer[],它轉換之后與 ArrayList<String> 也存在泛型類型不匹配的問題。在 Java8 中用 stream 可以很方便的轉換過來,之前的 Java 版可以用循環,這里給你一個 Stack Overflow 上的答案

回答2:

// 聲明數組int[] arr = { 1, 10, 8 };// 輸出測試數組System.out.println('測試的數組為:' + Arrays.toString(arr));// 通過下角標訪問元素,數組的下角標是從0開始的System.out.println('通過數組的下角標訪問元素,元素的下角標從0開始,下角標為0的元素是:' + arr[0]);// 將Array 轉換成 ArraylistList<int[]> ss = Arrays.asList(arr);ArrayList<String> arrayList = new ArrayList<String>();

List<int[]>不能自動轉ArrayList<String>

建議統一數據類型, int[] arr = { 1, 10, 8 };換成 String[] arr = { '1', '10', '8' };

// 聲明數組String[] arr = { '1', '10', '8' };// 輸出測試數組System.out.println('測試的數組為:' + Arrays.toString(arr));// 通過下角標訪問元素,數組的下角標是從0開始的System.out.println('通過數組的下角標訪問元素,元素的下角標從0開始,下角標為0的元素是:' + arr[0]);// 將Array 轉換成 ArraylistArrayList<String> arrayList = new ArrayList<String>(Arrays.asList(arr));

標簽: java
相關文章:
主站蜘蛛池模板: 天天干夜夜骑 | 久草网在线 | 日本特级淫片 | 三级av片| 成年人免费在线视频 | 国产一级黄色录像 | 毛片网站在线播放 | 午夜aaa | 国产欧美在线 | 91青青草| 国产午夜在线 | 黑人精品xxx一区一二区 | 日韩在线观看免费 | www.婷婷.com| 久插视频| www.av在线 | 九九视频在线 | 久久久久毛片 | 欧美在线一区二区 | 欧美日韩激情视频 | 国产成人免费在线视频 | 97精品久久 | 午夜在线观看免费视频 | 手机av免费 | 亚洲乱码一区二区 | 欧美三级成人 | 青青草在线观看视频 | 懂色av蜜臀av粉嫩av分享 | 国模一区二区 | 91在线看片 | 日韩一区三区 | av手机天堂 | 天天干天天干天天操 | 久久久久久中文字幕 | 亚洲精品免费看 | 好吊视频一区二区三区 | 国产精品久久一区二区三区 | 爱搞逼综合网 | a一级黄色片| 国产精品一二 | 在线视频福利 |