新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Arrays.asList()數(shù)組轉(zhuǎn)集合的坑-創(chuàng)新互聯(lián)
1、錯誤用法:
int arr [] = {1,2,3};
List ints = Arrays.asList(arr);
System.out.println(ints.size());// 1
通過Arrays.asList方法轉(zhuǎn)換的List并不是真正的java.util.ArrayList!!!返回的是java.util.Arrays.ArrayList!!!
2、不同之處
Arrays.ArrayList 是工具類 Arrays 的一個內(nèi)部靜態(tài)類,它沒有完全實現(xiàn)List的方法,而 ArrayList直接實現(xiàn)了List 接口,實現(xiàn)了List所有方法。
即使用Arrays.asList()轉(zhuǎn)換后的集合不能進行增刪操作
3、正確的使用
int arr [] = {1,2,3};
// List ints = Arrays.asList(arr);
// System.out.println(ints.size());// 1
// 使用Spring框架
List list1 = CollectionUtils.arrayToList(arr);
System.out.println(list1.size());// 3
List integerList = Arrays.asList(1, 2, 3, 4);
System.out.println(integerList.size());// 4
System.out.println("=========");
// 使用Collections工具類
List list = new ArrayList<>();
Collections.addAll(list, "dog", "cat", "pig");
list.forEach(s -> {
System.out.println(s);
});
System.out.println("=========");
// 使用JDK1.8Lambda表達式
int intArray [] = {1,2,3};
List collect = Arrays.stream(intArray).boxed().collect(Collectors.toList());
collect.forEach(integer -> {
System.out.println(integer);
});
System.out.println("=========");
參考:https://mp.weixin.qq.com/s/iDpx7krEjSue0-IXGiMFeQ
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
網(wǎng)頁名稱:Arrays.asList()數(shù)組轉(zhuǎn)集合的坑-創(chuàng)新互聯(lián)
瀏覽地址:http://fisionsoft.com.cn/article/dghscd.html