首页 > 编程 > Java > 正文

Java复习之集合框架List接口

2019-11-06 08:20:28
字体:
来源:转载
供稿:网友

这篇博客主要是总结一下java中集合框架List接口的用法。

1.集合框架

(1)集合框架的作用

在实际开发中,我们经常会对一组相同类型的数据进行统一管理操作。到目前为止,我们可以使用数组结构,链表结构二叉树结构来实现

数组最大的问题在于数组中的元素的个数是固定的,要实现动态数组,必竟还是比较麻烦,自己实现链表或者二叉树结构来管理对象更是不方便

在JDK1.2版本之后,JAVA完整的提供了类集合的概念,封装了一组强大的、非常方便的结合框架API,让我们在开发中大大提高了效率

集合分为三大接口: Collection Map Iterator 集合框架的接口和类在Java.util包中

(2)集合框架结构图

这里写图片描述

(3)Collection接口

Collection层次结构中的根接口。Collection表示一组对象,这些对象也称为collection的元素。一些collection允许有重复的元素,而另一些则不允许。一些collection是有序的,而另一些则是无序的。JDK不提供此接口的任何直接实现:它提供更具体的子接口(如set和List)实现。此接口通常用来传递collection,并在需要最大普遍性的地方操作这些collection

2.List接口

public interface List extends Collection

有序的collction。此接口的用户可以对列表中每个元素的插入位置进行精确控制,用户可以根据元素的整数的索引(在列表中的位置)访问元素,并搜索列表中的元素。

List接口的注意事项

1.允许重复元素

2.必须是有序

3.允许null元素 (1)ArrayList

public class ArrayList extends AbstractKList implements List

public static void arrayList() { //创建ArrayList对象,默认的容量为10,超过10个会自动扩充 ArrayList list =new ArrayList(); //添加元素 list.add(10); list.add("小白"); list.add(true); list.add(11); list.add(12); list.add(13); list.add(14); list.add(15); list.add(16); list.add(17); list.add(18); list.add(19); list.add(20); list.add(5,50); System.out.PRintln("第五个元素"+list.get(5)); System.out.println("一共有元素"+list.size()); //清除所有元素 //list.clear(); //System.out.print("一共有元素"+list.size()); //判断列表中是是否含有某个元素 System.out.println(list.contains(20)); //检查列表是否为空 System.out.println(list.isEmpty()); //删除指定索引的元素,返回的删除的对象 System.out.println(list.remove(0)); }

(2)Vector

public class Vector extends AbstractList implements List,Randomaccess,Cloneable,Serializable

Vector类可以实现可增长的对象数组。与数组一样,它包含可以使用整数索引进行访问的组件。但是,Vector的大小可以根据需要增大或缩小,以适应创建Vector后进行添加或者移除项操作

Vector注意事项

1.使用动态对象数组实现 2.默认构造方法初始化容量为10 3.扩充方式:如果有指定的增量,当前容量+增量 如果没有增量:原容量*2 4.线程安全

public static void vector() { //默认大小为10 Vector vector= new Vector(); vector.add("纯纯"); vector.add("梦梦"); vector.add("爱爱"); }

(3)LinkedList

public class LinkedList extends AbstractSequentialList implements List,Deque,Cloneable,Serializable

List接口的链接列表实现。实现所有可选的列表操作,并且允许所有元素。除了实现List接口外,LinkedList类还为在列表的开头以及结尾get,remove和insert元素提供了统一的命名方法

LinkedList注意事项

1.使用双向链表实现

2.优点:适合插入与删除操作

public static void linkedlist(){ LinkedList linkedList=new LinkedList(); linkedList.add("凤凤"); linkedList.add("萌萌"); linkedList.add("傻傻"); }
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表