前面一章节,我们介绍了集合的类图,那么本节将学习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深入分析-创新互联
分享网址:https://www.cdcxhl.com/article34/jgjpe.html
成都网站建设公司_创新互联,为您提供网站制作、Google、建站公司、网站改版、网站排名、标签优化
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联