Collection Map 总集合 实现类 特点一文尽知
来源:互联网 发布:客所思声卡变女声数据 编辑:程序博客网 时间:2024/06/13 09:29
集合的特点
长度可变
适合存储对象类型,操作比较简单
集合的框架体系
Collection单列集合
(接口)List: 实现类 ArrayList LinkedList Vector (接口)Set: 实现类 HashSet TreeSet LinkedHashSet
Map双列集合
(接口)map: 实现类 HashMap Hashtable TreeMap Properties
Collection接口
常用方法: add remove clear size contains isEmpty iterator
分类
Set接口
特点 1、无序的 2、不可以添加重复的元素 3、没有索引 分类 HashSet 特点: 底层是哈希表结构 要添加的元素类型 最好重写equals和hashcode方法 原理 HashSet如何过滤重复项? 注意事项 两个对象的哈希值一样,用equals判断两个对象 ,结果不一定为 true 如果equals判断两个对象,结果为true,则两个对象的哈希值肯定一样 两个不同的对象,哈希值也有可能一样 TreeSet 特点: 底层是二叉树结构 可以实现元素的自然排序 实现方式 方式一: 让要添加的元素类型 实现Comparable接口,重写 compareTo方法 方式二: TreeSet构造器中指定Comparator接口的对象,重写compare方法 原理 TreeSet如何过滤重复项 LinkedHashSet 特点 底层 是链表和 哈希表 的双实现 存入和取出的顺序是一致的!
List接口
特点 1、有序的(插入和取出的顺序一致) 2、可以添加重复的元素 3、支持索引 特有方法 add(int index,Object obj)插入 set(int index,Object obj)修改 get(index) 获取指定索引处的元素 remove(int index) 删除指定索引处的元素 indexOf(元素) 获取元素第一次出现的索引 lastIndexOf(元素)获取元素最后一次出现的索引 分类 ArrayList类 特点 底层采用的是数组结构 适合做搜索,不适合增删改,(空间是连续的) 版本较新,线程不安全,不同步,效率比较高 LinkedList 特点 底层采用的是链表结构 适合做增删改,不适合搜索(空间是不连续) 特有方法 addFirst addLast getFirst getLast removeFirst removeLast Vector 特点 版本较老,线程安全的,同步的,效率比较低 底层采用的是数组结构遍历方式 方式一:使用Iterator 方式二:增强for List中也可以使用普通for
Map集合
map接口
特点 存取的是键值对,键不能重复,值可以重复 分类 HashMap实现类 特点 底层是哈希表结构,键是 无序的 一般要重写 hashcode和equals方法 版本比较新,线程不安全、不同步的、效率高,允许null键null值 Hashtable实现类 特点 底层是哈希表结构 版本比较老,线程安全、同步的、效率低,不允许null键null值 TreeMap实现类 特点 底层是二叉树,可以实现 对 键 排序 LinkedHashMap实现类 特点 底层 是链表和 哈希表 的双实现 键的存入和取出的顺序是一致的! Properties实现类 特点 用于读取和写入属性 文件(xx.properties) 属性文件格式要求 键值对 键和值都要求是String类型 常用方法 load加载属性文件的数据 到Properties集合中 list打印Properties集合中的元素到 指定设备上 store 将集合中的内容 存储到 文件中 setProperty 设置属性 getProperty获取属性 方法 put remove size isEmpty containsKey containsValue get entrySet keySet values
泛型
概念 参数化类型,可以用在 类、接口、方法上标志 <?> <Object>好处 1、解决了编译警告 2、提高了类型安全 3、减少了类型转换的次数,提高效率,代码简洁使用 自定义泛型 泛型类 泛型方法 泛型接口语法注意事项 泛型不支持基本类型,只能放引用类型 泛型支持如备注写法泛型的继承和通配符 没有所谓的泛型继承,比如下面写法是错误 通配符 ? 不限定类型 ? extends 类型,限定 上限 ? super 类型 ,限定了下限Collections sort排序 max/min求最值 fill填充 reverse反转
0 0
- Collection Map 总集合 实现类 特点一文尽知
- java中集合Collection和Map接口的实现类
- 面试题总集合
- 【Halcon】Halcon算子总集合
- android 各种框架总集合.
- Collection Map 集合类
- Map、Set、List、Collection、Queue、Stack的特点与用法。
- collection[set,, list]和map的的特点
- JAVA面试题总集合(1)
- Java中常用数据结构的实现类 Collection和Map
- Java中常用数据结构的实现类 Collection和Map
- Collection接口和Map接口的主要实现类
- Java中常用数据结构的实现类 Collection和Map
- Collection接口和Map接口的主要实现类
- Java中常用数据结构的实现类 Collection和Map
- Java中常用数据结构的实现类 Collection和Map
- Collection接口和Map接口的主要实现类
- Java中常用数据结构的实现类 Collection和Map
- android-页面跳转及携带数据
- SQL Server 在指定数据库下 创建表(操作)
- IOS开发 自定义 URL Scheme(及应用内的跳转)
- 在eclipse上安装python插件,PyDev的过程
- window对象的属性和方法
- Collection Map 总集合 实现类 特点一文尽知
- ios微信支付
- Dubbo+Zookeeper+Spring整合应用篇-Dubbo基于Zookeeper实现分布式服务
- MINA框架简介
- 基于时间的动画算
- Linux安全检查脚本
- Android 优秀的框架介绍博客
- 测试类型
- UVa10256