集合的概念、类型、接口以及接口的实现类的方法描述

集合包含多个对象的简单对象,所包含的对象称为元素。集合里面可以包含任意多个对象,数量可以变化;同时对对象的类型也没有限制,也就是说集合里面的所有对象的类型可以相同,也可以不同。

集合和数组比较:

集合:数量不限、类型不限

数组:定长、类型单一


数据结构存储分类:

1)顺序存储             (2)链式存储        (3)树形存储

4)散列存储Hash   5Map映射存储


结构图:






集合中各个接口的特点:

1:Collection接口是一组允许重复的对象。

2:Set接口  继承Collection,无序但不允许重复。

3:List接口 继承Collection,有序但允许重复,并引入位置下标。

4:Map接口 既不继承Set也不继承Collection,是键值对。


Collection接口用于表示任何对象或元素组。想要尽可能以常规方式处理一组元素时,就使用这一接口。


Set接口继承Collection接口,而且它不允许集合中存在重复项。所有原始方法都是Collection中现成的,没有引入新方法。


“集合框架”支持Set接口两种普通的实现:HashSet和TreeSet。在更多情况下,会使用HashSet存储重复自由的集合。考虑到效率,添加到

HashSet的对象需要采用恰当分配散列码的方式来实现hashCode()方法。当需要从集合中以有序的方式抽取元素时,TreeSet实现会有用处。为了能

顺利进行,添加到TreeSet的元素必须是可排序的。



List接口继承了Collection接口以定义一个允许重复项的有序集合。该接口不但能够对列表的一部分进行处理,还添加了面

位置的操作。


面向位置的操作包括插入某个元素或Collection的功能,还包括获取、除去或更改元素的功能。在List中搜索元素可以从列表的头部或尾部开始,如果找


到元素,还将报告元素所在的位置。


注意:

1)使用List(如ArrayList)时,不会自动调用hashCode()方法。因为在List中,重复了就重复了,不需判断,保证唯一性。

2)List中添加了下标index的功能,这样对List的修改可以利用set方法对指定位置的元素直接进行替换,不需要象Set那么复杂(要转换成数组才

能修改,之后还要转换回去)。

3)Collection用Iterator迭代器,而List可以用ListIterator列表迭代器。前者只能next(),后者不但包含next()方法,还包含previous()

方法。因此,如果要用List做类似书的翻页功能,不但可以向后翻,还可以向前翻。


ArrayList和LinkedList

如果要支持随机访问,而不必在除尾部的任何位置插入或除去元素,那么,ArrayList提供了可选的集合。

但如果要频繁的从列表的中间位置添加和除去元素,而只要顺序的访问列表元素,那么LinkedList实现更好。




Map接口不是Collection接口的继承。而是从自己的用于维护-关联的接口层次结构入手。



按定义,该接口描述了从不重复的键到值的映射可以把这个接口方法分成三组操作:改变查询提供可选视图



下面文章将结合代码来演示如何使用接口和方法的


  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值