JAVA从入门到精通(15)-- 集合

来源:互联网 发布:淘宝车上用品 编辑:程序博客网 时间:2024/05/16 15:33

一、集合框架概述

1》集合类:是一种工具类,就像是容器,存储任意数量的具有共同属性的对象。

2》作用:

a、在类的内部,对数据进行组织。

b、简单而快速的搜索大数量的条目。

c、有的集合接口,提供了一系列排列有序的元素,并且可以在序列中间快速的插入或者删除有关元素。

d、有的集合接口,提供了映射关系,可以通过关键字(key)去快速查找到对应的唯一对象,而这个关键字可以是任意类型。

3》与数组的对比

a、数组的长度固定,集合长度可变。

b、数组只能通过下标访问元素,类型固定,而有的集合可以通过任意类型查找所映射的具体对象。

4》Java集合框架体系结构,根接口分为两个:

a、Collection(包括List、Queue、Set三个子接口)

List、Quene存储的元素是排列有序的,并且可以重复

Set存储的元素是无序的,并且不可以重复

List和Set比较常用,List翻译为" 序列 ",Quene翻译为 " 队列",而Set翻译为"集" 。

b、Map

  

、Collection接口&List接口

1》Collection接口

a、是List、Set和Queue接口的父接口

b、定义了可用于操作List、Set和Queue的方法——增删改查

c、List接口及其实现类——ArrayList

1.List是元素有序并且可以重复的集合,被称为序列

2.List可以精确的控制每个元素的插入位置,或删除某个位置元素

3.ArrayList——数组序列,是List的一个重要实现类

4.ArrayList底层是由数组实现的

2》注:对象存入集合都会变成Object类型,取出时需要类型转换。

三、泛型

集合中的元素,可以是任意类型的对象(对象的引用)

如果把某个对象放入集合,则会忽略他的类型,而把他当作Object处理,取出的时候也是当作Object处理

泛型则是规定了某个集合只可以存放规定的类型及其子类型的对象,否则会报错!

会在编译期间进行类型检查,可以直接按指定类型获取集合元素

泛型不能使用基本类型,若必须使用,则使用它们的包装类。

四、Set接口及其实现类——HashSet

1》Set是元素无序并且不可以重复的集合,被称为集

2》HashSet——哈希集,是Set的一个重要实现类

注:Set集合中只能使用foreach或iterator方法来遍历,不能使用get()方法,因为Set是无序的

五、Map和HashMap

1》Map接口:

1。Map提供了一种影射关系,其中的元素是以键值对(key-value)的形式存储的,能够实现根据key快速查找value

2。Map中的键值对以Entry类型的对象实例形式存在

3。键(key值)不可重复,value值可以

4。Map支持泛型,形式如:Map<K , V>

2》HashMap类

1。HashMap是Map的一个重要实现类,也是最常用的,基于哈希表实现

2。HashMap中的Entry对象是无序排列的

3。Key值和value值都可以为null,但是一个HashMap只能有一个key值为null的映射(key值不可重复)

0 0