java集合类


1.概念:

集合类是用于存储对象的容器,该容器长度是可变的

2.与数组的区别:

1.集合长度可变,数组长度不可变
2.集合只能存储引用类型数据, 数组可以存储基本数据类型
3.集合中存在的对象可以是任意类型,数组值能存一种

3.集合中的常用方法
1添加方法:

boolean add(object e):一次添加一个元素。
boolean addAll(Collection):将一个参数容器中的元素添加到当前容器中。

2删除方法:

boolean remove(object):删除指定对象。
booleanremoveAll(Collection):删除指定Collection中和本Collection中相同的元素。

3.判断方法:

boolean contains(object):是否包含指定元素。
boolean contains(Collection):是否包含指定容器中的元素。
boolean isEmpty():是否有元素。

4.获取元素个数:

int size():获取元素有几个。

5取交集:

boolean retainAll(Collection):保留和指定Collection集合中相同的元素不同的元素会被删除。

6将集合转成数组:

Object[] toArray()

7.取出元素的方法:

Iterator iterator() 迭代器

二:迭代器
作用:

迭代器是取出集合元素的方式的一个对象,通过iterator()方法来完成。该方法返回一个iterator类型对象。

如:创建集合

Collection coll=new ArrayList();
coll.add(“abc1”);
coll.add(“abc2”);
coll.add(“abc3”);
获取该集合的迭代器对象
Iterator it=coll.iterator();
while(it.hashNext()){
	System.out.println(it.next());
}

三:Collection重要的子接口
1. List和set的特点:

1.List:
	-  有序 存储时顺序和取出时保持一致()
	-  该集合中的元素都有索引,所以可通过索引来访问元素
	-  可以存储重复元素
2..Set:
	-   无序 (集合存入元素的顺序和取出元素的顺序不一致)
	-   不包含重复元素。

2.List的方法
因为List接口的特点是对元素有索引标示,所以它的特有方法应该都是围绕索引定义的。
1 添加:

void add(index ,element); 根据索引添加元素
boolean addAll(index,collection);

2删除:

object remove(index):获取并删除。

3获取:

object get(index):获取元素
int indexOf(object); 获取元素索引:
int lastIndexOf(object);获取元素索引:
List subList(fromIndex,toIndex):获取列表中的一部分,包含fromIndex位置,不包含toIndex位置

4修改:

object set(index,element):替换指定位置的元素,并返回被替换掉的元素

3.实现List接口的子类:
1.Vector:

底层是数据结构的da,可变长度数据。原理:一旦原数组长度不够,会创建新数组,将原数组的元素复制到新数组中,并将新元素添加到新数组中。

2.ArrayList:

底层是数组结构,也是支持长度可变数组的。是不同步的,替代了Vector,因为效率高查询效率高,但增删效率低。

3.LinkedList:

底层是链接列表结构,简称链表结构。这个中结构的好处,对元素的增删非常效率很高。好处是删除和增加效率高,但查询很慢,因为它的查询要一个一个的往下查询。

4 LinkeList和ArrayList的区别:

ArrayList:查询效率高,但增删效率低。
LinkedList:好处是删除和增加效率高,但查询很慢,因为它的查询要一个一个的往下查询。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值