Java 集合框架浅识

本章先认识,下面会针对每一个不同的集合特性做详细说明。

集合框架概述

java集合框架包含的内容
这里写图片描述

集合框架是为表示和操作集合而规定的一种统一的标准体系结构。集合框架都包含三大块内容:对外的接口,接口的实现和对集合运算的算法。

Java集合框架中的两大类接口:Collection和Map,其中,Collection又有两个子接口:List 和Set。所以通常说java集合框架供有三大类接口:List,Set和Map。它们的共同点:都是集合接口,都可以用来存储很多对象。它们的区别如下:

Collection接口存储一组不唯一,无序的对象。
Set接口继承Collection接口,存储一组唯一,无序的对象。
List接口继承Collection接口,存储一组不唯一,有序的对象。
Map接口存储一组成对的键-值对象,提供Key到value的映射。Key(键)不要求有序,不允许重复。Value同样不要求有序,但允许重复。
Iterator接口是负责定义访问和遍历元素的接口。

List接口

实现List接口的常用类有ArrayList 和LinkedList。
LinkedList采用链表存储方式,优点在于插入,删除元素时效率比较高。它提供了额外的addFirst(),addLast(),removeFirst()和removeLast()等方法,可以在LinkedList的首部或尾部进行插入或删除操作。

            List接口中定义的各种常用方法

这里写图片描述

Map接口

HashMap集合类

Map接口存储一组成对的键-值对象,提供key到value的映射,Map中的key不要求有序,不允许重复。Value同样不要求有序,但允许重复。最常用的Map实现类是HashMap,它的存储方式是哈希表。哈希表也称为散列表,是根据关键码值(key,value)而直接进行访问的数据结构。

Map常用方法

这里写图片描述

Hashtable 和 HashMap的异同
两者主要区别如下:

Hashtable继承自Dictionary类,而HashMap实现了Map接口。
Hashtable是线程安全的,HashMap重速度,轻安全,是线程非安全的,所以当运行到多线程环境中时,需要程序员自己管理线程的同步问题。
Hashtable不允许null值(key和value都不允许),HashMap允许null值(key和value都允许)

迭代器Iterator

Iterator为集合而生,专门实现集合的遍历。它隐藏了各种集合实现类内部细节,提供了遍历集合的统一编程接口。
Collection接口的iterate()方法返回一个Iterator,然后通过Iterator接口的两个方法即可方便地实现遍历。

Boolean hasNext():判断是否存在另一个可访问的元素。
Object next() :返回要访问的下一个元素。

            Set  keys = 集合对象.keySet(); //取出所有key的集合
            Iterator  it = keys.iterator() ; //获取Iterator对象
            While(it.hasNext()){
                String key =(String)it.next(); //取出key
            }

使用foreach语句遍历

Set keys =dogMap.keySet(); //取出所有key的集合
For(Object key : keys){
Dog dog = (Dog)dogMap.get(key); //根据key取出对应的值
}

Map.Entry遍历
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值