java中的集合类

目录


一、关联关系

观察下面关系表

list集合和set集合都继承于Collection。

Collection中的常用方法(公共方法)

add()向集合中添加元素

size()获取集合中元素的个数

clear()清空所有元素

contains()判断集合中是否包含某元素,最好重写equals方法

remove()移除集合中的某个元素,重写equals方法

isEmpty()判断集合是否为空,是否存在元素

toArray()把集合转换成数组


二、Map集合

        Map集合和Collection集合没有任何关系,以key/value键值对的形式存储元素,存储java对象的内存地址,key不能重复,key存储元素和set集合存储元素一样。

HashMap底层是哈希表数据结构,非线程安全,key和value都能为null

Hashtable带有synchronized关键字,线程安全,效率低,使用较少,key和value都不能为null

properties继承了Hashtable,但key和value只支持string类型

sortedSet中的key部分的元素能自动排序

TreeMap底层是二叉树,能自动按大小排序


三、List集合

有序可重复,存储的元素有下标,按顺序存取

ArrayList非线程安全,数组结构,检索查找效率高,增删效率低,会影响元素移动

Vector 线程安全,数组结构,使用较少

LikedList双向链表,存储地址不连续,增删效率高,检索效率低

集合初始化容量为10,底层是object数组,自动扩容1.5倍

特有的方法:

void  add(int index ,E element) 在指定的index下标上添加元素

E get(int index)得到index下标上的元素

E  set(int indx,Eelement)修改指定下标上的元素

int indexof(object o)得到元素第一次出现的下标

int lastIndexof(object o)得到元素最后一次出现的下标

E remove(int index)删除下标上的元素


四、Set集合

无序不可重复,存取顺序不一定相同,元素没有下标,元素不能重复,set集合就是map集合的key部分

set集合存储元素特点:
HashSet 底层是一个HashMap集合,是一个哈希表数据结构

TreeSet 底层是一个TreeMap集合,是一个树数据结构

set(map)集合中的常用方法:

v put(k key, v value)向集合中添加键值对

v get(object key) 通过key获取value

void clear() 清空集合

boolean containskey(object key)判断集合中是否包含某个key

boolean containsvalue(object value)判断集合中是否包含某个value

boolean isEmpty()判断集合是否为空

Set<k> keyset()获取集合中所有的key

v remove(object key)通过key移除值,删除的是键值对

int size()获取键值对的个数

collection<v> values()获取集合中所有的value,返回一个collection

set<map.empty<k,y>> entryset()将集合转换成set集合

注意:哈希表是一个数组和单向链表的结合体

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值