一、List集合 1.List集合存儲元素的特點: (1)有序(List集合中存儲有下標):存進去是這樣的順序,取出來還是按照這個順序取出。 (2)可重覆 2.深入ListJ集合 ArrayList集合底層是數組,數組是有下標的;所以ArrayList集合有很多自己的特性;ArrayList ...
一、List集合
1.List集合存儲元素的特點:
(1)有序(List集合中存儲有下標):存進去是這樣的順序,取出來還是按照這個順序取出。
(2)可重覆
2.深入ListJ集合
ArrayList集合底層是數組,數組是有下標的;所以ArrayList集合有很多自己的特性;ArrayList集合底層預設初始化容量是10,擴大之後的容量是原容量的1.5倍;Vector集合底層預設初始化容量為10,擴大之後的容量是原容量的兩倍
3.如何優化ArrayList和Vector
儘量減少擴容操作,因為擴容需要數組拷貝,數組拷貝是很耗記憶體的,一般推薦在創建集合的時候指定初始化容量
package com.bjpowernode.java_learning; import java.util.*; public class D86_1_ListCollectionAnalysis { public static void main(String[] args) { //創建一個List集合 //Collection c = new ArrayList();//這樣初始化一個列表編譯沒問題,但是我們就不用能用List特有的方法了 List l = new ArrayList(); //List l = new LinkedList();//這兩種初始化方式哪種都可以,這就涉及到底層的數據結構問題了,可參見《演算法》一書 //向列表的尾部添加元素 l.add(100); l.add(99); l.add(23); l.add(250); l.add("hiosaf"); //add(int index,E e)向指定位置插入e l.add(5,"jioasf"); System.out.println(l.get(1)); System.out.println("===================="); //遍歷 Iterator it = l.iterator(); while(it.hasNext()) { System.out.println(it.next()); } //這也看出來,既可以使用迭代器來遍歷,也可以使用get方法進行遍歷 } }
二、源碼:
D86_1_ListCollectionAnalysis.java
https://github.com/ruigege66/Java/blob/master/D86_1_ListCollectionAnalysis.java
2.CSDN:https://blog.csdn.net/weixin_44630050
3.博客園:https://www.cnblogs.com/ruigege0000/
4.歡迎關註微信公眾號:傅里葉變換,個人公眾號,僅用於學習交流,後臺回覆”禮包“,獲取大數據學習資料