摘要:而一開始的設計時用于打印數組而設計的,但開始,有了另一個比較更方便的打印函數于是打印不再使用,而恰巧可用于將數組轉為集合。錯誤用法如果你這樣使用過,那你要注意下了。
使用Arrays.asList()的原因無非是想將數組或一些元素轉為集合,而你得到的集合并不一定是你想要的那個集合。
而一開始asList()的設計時用于打印數組而設計的,但jdk1.5開始,有了另一個比較更方便的打印函數Arrays.toString(),于是打印不再使用asList(),而asList()恰巧可用于將數組轉為集合。
錯誤用法如果你這樣使用過,那你要注意下了。
錯誤一
將基本類型數組作為asList的參數
int[] arr = {1,2,3}; List list = Arrays.asList(arr); System.out.println(list.size());
猜一下輸出結果?
錯誤二
將數組作為asList參數后,修改數組或List
String[] arr = {"歡迎","關注","Java"}; List list = Arrays.asList(arr); arr[1] = "愛上"; list.set(2,"我"); System.out.println(Arrays.toString(arr)); System.out.println(list.toString());
猜一下輸出結果?
錯誤三
數組轉換為集合后,進行增刪元素
String[] arr = {"歡迎","關注","Java"}; List list = Arrays.asList(arr); list.add("新增"); list.remove("關注");
猜一下輸出結果?
你是不是以為上面
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/74805.html
摘要:以下指代數組,指代數組列表。常見的轉換方法是或。在的使用過程中需要注意,當要轉換的長度小于的時,不要試圖通過傳入形參的方式進行轉換,雖然這在的長度大于時不會出現問題。所以,極度建議在轉換之前初始化的長度為的,并且使用返回值重新給賦值。 Array 和 List 都是我們在開發過程中常見的數據結構。我們都知道 Array 是定長的,List 是可變長。而且,List 的實現類 Array...
摘要:方法接受一個對象,以及一個數組或是一個用逗號分隔的列表,并將元素添加到中。工作的很好,因為他從第一個參數中了解到了目標類型是什么。 ArrayList.asList() 接受一個數組或是用逗號分隔的元素列表,也可以用可變參數,然后將其轉為一個List對象。 Collections.addAll()方法接受一個Collection對象,以及一個數組或是一個用逗號分隔的列表,并將元素添加...
摘要:獲取每個元素的字符串長度放入新流中,然后轉為類型。歸約歸約就是把整個流歸約成一個值的操作,比如求集合中最大的元素所有元素值的和之類的操作。 前言: 上一篇文章 Java 8之stream介紹和使用 中講解了stream的定義和用法,簡單介紹幾個最基本最常用的方法,其實stream還有更強大的功能,這篇文章就會給大家介紹stream的進階用法。 篩選: 在上一篇文章中我們介紹了使用fi...
摘要:與分析聲明文章均為本人技術筆記,轉載請注明出處示例源碼將數組或者指定個數的對象轉換為是的內部類實例,與不是一回事,長度固定,只能遍歷訪問,不能使用修改集合相關的方法,比如方法會拋出異常適配器模式修改數組內容后,內容也會隨之改變,體現適配器模 Java Arrays.asList()與Arrays.sort()分析 聲明 文章均為本人技術筆記,轉載請注明出處https://segment...
摘要:根據拇指規則,最佳做法應該是盡量減少屬性的訪問級別。通常的,可變對象可用來避免產生過多的對象。如果類中定義了構造函數,那么編譯器將不會給它插入默認構造函數。 1、轉化數組為ArrayList 通常開發者轉化數組為ArrayList的方式為 List list = Arrays.asList(arr); Arrays.asList()會返回一個ArrayList,而這個ArrayList...
閱讀 2915·2021-11-15 18:02
閱讀 3809·2021-10-14 09:43
閱讀 3748·2021-09-08 10:41
閱讀 2527·2019-08-30 15:53
閱讀 1810·2019-08-30 14:14
閱讀 1954·2019-08-29 16:12
閱讀 3151·2019-08-29 14:03
閱讀 1285·2019-08-29 13:46