前面一章節,我們介紹了集合的類圖,那么本節將學習Collection 接口中最常用的子類ArrayList類,本章分為下面幾部分講解(說明本章采用的JDK1.6源碼進行分析,因為個人認為雖然JDK1.8進行了部分改動,但萬變不離其宗,仍然采用的JDK1.6的引子進行的優化,因此學會了1.6對于1.8也就理解了)。
創新互聯公司是一家專注于網站建設、網站設計與策劃設計,彭州網站建設哪家好?創新互聯公司做網站,專注于網站建設十載,網設計領域的專業建站公司;建站業務涵蓋:彭州等地區。彭州做網站價格咨詢:18980820575一、ArrayList 的常見功能
在分析ArrayList的源碼前,我們先看下ArrayList的常見的功能:
package study.collection; import java.util.ArrayList; import java.util.Date; import java.util.List; public class TestDemo01 { public static void main(String[] args) { List list = new ArrayList(); //ArrayList:底層實現時數組,線程不安全,效率高。所以,查詢快。修改、插入、刪除慢。 //LinkedList:底層實現是鏈表,線程不安全,效率高。所以,查詢慢。修改、插入、刪除快。 //Vector:線程安全的,效率低。 list.add("aaa"); list.add("aaa"); list.add(new Date()); list.add(new Dog()); list.add(1234); //注意,list集合中只能添加引用類型,這里包裝類的:自動裝箱! list.remove(new String("aaa")); System.out.println(list.size()); for(int i=0;i<list.size();i++){ System.out.println(list.get(i)); } list.set(3, new String("3333")); list.add(4, new String("3333")); System.out.println(list.isEmpty()); list.remove(new Dog()); //hashcode和equals System.out.println(list.size()); List list2 = new ArrayList(); list2.add("bbb"); list2.add("ccc"); list.add(list2); //跟順序的操作 String str = (String) list.get(0); System.out.println(str); list.set(1, "ababa"); list.remove(0); } } class Dog { }
網頁名稱:JAVA提高第十篇ArrayList深入分析-創新互聯
分享網址:http://vcdvsql.cn/article34/jgjpe.html
成都網站建設公司_創新互聯,為您提供網站制作、Google、建站公司、網站改版、網站排名、標簽優化
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯