欢迎来到天天文库
浏览记录
ID:38158095
大小:21.52 KB
页数:4页
时间:2019-06-06
《Java容器类分析之List ArrayList Vector》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Java容器类分析之ListArrayListVectorList是接口,声明了各个方法,不多说。且看ArrayList类。ArrayList类的成员变量有Object[]elementData,intsize;其中elementData数组用来存储加入到ArrayList的对象,size为列表中实际的对象数目。ArrayList类不是线程安全的。Vector与ArrayList的实现基本相同,只是Vector类是线程安全的,其方法都带有synchronized关键字,如果不考虑线程同步的话,ArrayList性能要好一些。当前它们内部实现原理
2、都是用到对象数组来实现,如果元素数目确定,直接用数组效率最高。简单的用法:(后面是数据打印结果)1.public class ListDemo { 2. 3. /** 4. * @param args 5. */ 6. public static void main(String[] args) { 7. List list = new ArrayList(); 8. String[] strArr = new String[3]; 9. bo
3、olean ret = list.add("haha"); 10. list.add(new String("aa")); 11. list.add(null); 12. System.out.println(list.size());//3 13. System.out.println(ret);//true 14. System.out.println(list);//[haha, aa, null] 15. System.out.println(strA
4、rr);//[Ljava.lang.String;@1fee6fc 16. System.out.println(strArr.getClass().getName());//[Ljava.lang.String; 17. System.out.println(list.indexOf("aa"));//1 18. System.out.println(list.indexOf(null));//2 19. String str = list.set(1, "ee"); 20.
5、 System.out.println(str);//aa 21. System.out.println(list);//[haha, ee, null] 1. String remove = list.remove(0); 2. System.out.println(remove);//haha 3. System.out.println(list);//[ee, null] 4. boolean result = list.remove("ff"); 5.
6、 System.out.println(result);//false 6. result = list.remove("ee"); 7. System.out.println(result);//true 8. System.out.println(list);//[null] 9. } 10. 11.} 1.public ArrayList() { 2. this(10); 3. } 4. public ArrayList(int initialCapacity) { 5.
7、super(); 6. if (initialCapacity < 0) 7. throw new IllegalArgumentException("Illegal Capacity: "+ initialCapacity); 8. this.elementData = new Object[initialCapacity]; 9. } 10. public boolean add(E e) { 11. ensureCapacity(size + 1); // In
8、crements modCount!! 12. elementData[size++] = e; 13. return true; 14.
此文档下载收益归作者所有