Java的集合类是一些常用的数据结构
Java集合就像一种“容器”,用于存储数量不等的对象,并按照规范实现一些常用的操作和算法
队列:先进先出 栈:先进后出 链表:单链表
集合框架:5.0之前,Java集合会丢失容器中所有对象的数据类型,将所有对象都当成Object进行处理,5.0之后增加泛型,从而编写更简洁
Java所有的集合类都是Java.util包下,又在Java.util.concurrent包下提供了一些多线程支持的集合类
Java的集合类主要由两个接口派生而出:Collection和Map
这两个接口派生出一些子接口或实现类
Java中的集合分为三大类:
list集合:线性,存储是连续的,可重复且长度可变
get集合:无重复性,无顺序,继承 Collection接口
Map集合:每个元素都是有key/Value健值对组成,Map中的key不允许重复,value可以重复
迭代器接口:迭代器可以采用统一的方式对Collection集合中的元素进行遍历操作,能够使用foreach循环遍历集合中的部分或全部元素
从5.0开始增加了Iterable新接口,该接口是Collection接口的父接口
方法:HashNext()判断是否有下一个可访问的元素
void remove():移除迭代器返回的最后一个元素
Collection集合中的实现类都实现了Iterable接口
Collection接口中的常用方法:
boolean add(E.obj) 添加元素
int size() 返回元素的个数
list是collection接口的子接口,是有序,可重复的集合
get() 查找 返回指定索引位置
Hash表中的存储元素的位置称为“桶”,通常情况下,单个桶只存储一个元素,此时性能最佳,Hash算法可以根据Hashcode值计算桶的位置,从中取出元素
startswith是否以某个字符串开头 endswith是否以某个字符串结尾
indexOf字符第一次出现的位置 toLowerCase 转换为小写
toUpperCase 转换为大写 trim 去掉首尾空格
toCharArray 变成字符数组 StringBuilder类 线程不安全
TreeSet 排序时,会调用元素compareTo(To)方法
Map接口是集合框架的另一个根接口,与collection接口并列
HashMap和TreeMap是Map体系中的两个实现类
HashMap:用基于哈西算法的Map接口的实现类
TreeMap:用基于“树”结构来存储的Map接口的实现类
HashMap没有对存放的元素进行排序,TreeMap按照存放元素的Key值进行排序
将Map集转换为collection集的三种方法
entrySet() keySet() values()
Java集合框架中还提供了两个非常实用的辅助工具类:collections和Arrays
collections工具类提供了一些对Collection集合常用的静态方法
Array工具类提供了一些针对数组的各种静态方法
Arrays.asList() 可把数组转换成列表
第5章 集合
最新推荐文章于 2024-02-18 15:43:21 发布