Java基本概念-集合框架
来源:互联网 发布:原油价格数据在哪里查 编辑:程序博客网 时间:2024/06/16 22:33
一 集合框架结构
Collection Map
1 接口 List Set
2 类 ArrayList LinkedList Vector HashSet TreeSet HashMap TreeMap Properties
二 Collection接口
1 Collection接口存储一组无序、不唯一的对象
三 List集合(集合添加时是Object,获取时也是Object)
1 List 接口存储一组不唯一,有序的对象,List集合定义时不需要指定大小,也不用指定集合中指定的数据类型
2 实现的类:ArrayList、LinkedList、Vector
3 常用方法:添加元素:add();
获取元素:get();
删除元素:remove();
判断是否含有某元素:contains();
获取集合大小:size();
迭代:通过for循环和get()方法实现
4 各实现类的区别:
ArrayList:非线程安全
内部采用数组实现
数据插入、删除时效率低;查找效率高
不适合频繁插入,频繁删除的情况
Vector:线程安全的,其他同ArrayList
LinkedList:非线程安全
内部采用链表结构实现
数据插入、删除时效率高;查找效率低
适合频繁插入,频繁删除的情况
四 Set集合
1 Set接口存储一组唯一,无序的对象
2 实现的类:HashSet、TreeSet
3 常用方法:添加元素:add();
获取元素:不能获取一个元素
删除元素:remove();
判断是否含有某元素:contains();
获取集合大小:size();
迭代:通过迭代器(Iterator,专门用于迭代集合)的hasNext()和next()方法实现
五 Map集合
1 Map接口存储一组键值对象,提供key到value的映射:
Map集合是通过key取value的,没有下标,没有顺序
Map中的键必须是唯一的,键可以是null,值是可以重复的
2 实现的类:HashMap、TreeMap 、Properties
3 常用方法:添加元素:put();
删除元素:remove()
判断键是否存在:containsKey();
判断值是否存在:containsValue();
返回键对应的值:get();
返回键集合:keySet();
迭代:迭代之前一个先得到键集合,通过键获取值,用迭代器迭代
获取集合大小:size();
六 装箱拆箱
1 装箱(box):基本类型转换为引用类型
2 拆箱(unbox):引用类型转换为基本类型
七 排序
1 Collections:Collections是集合的工具类,提供了集合中常用sort的方法
2 Arrays:Arrays是数组的工具类,提供了关于数组常用sort的方法
3 对CompareTo()方法的重写:sort方法内部在排序时,会比较两个集合元素的大小,如果元素是引用类型,那么元素的值是地址编号,则需要对compareTo()进行重写
八 比较
1 变量特点:存储单个
数据类型限制
2 数组特点:存储固定个数(个数必须写,一旦确定,不能改变)
数据类型限制
3 集合特点:存储任意个(个数可写可不写,写了就是默认容量,如果需要更大容量会自动扩容)
数据类型不受限制
集合中保存的是对象的引用
Collection Map
1 接口 List Set
2 类 ArrayList LinkedList Vector HashSet TreeSet HashMap TreeMap Properties
二 Collection接口
1 Collection接口存储一组无序、不唯一的对象
三 List集合(集合添加时是Object,获取时也是Object)
1 List 接口存储一组不唯一,有序的对象,List集合定义时不需要指定大小,也不用指定集合中指定的数据类型
2 实现的类:ArrayList、LinkedList、Vector
3 常用方法:添加元素:add();
获取元素:get();
删除元素:remove();
判断是否含有某元素:contains();
获取集合大小:size();
迭代:通过for循环和get()方法实现
4 各实现类的区别:
ArrayList:非线程安全
内部采用数组实现
数据插入、删除时效率低;查找效率高
不适合频繁插入,频繁删除的情况
Vector:线程安全的,其他同ArrayList
LinkedList:非线程安全
内部采用链表结构实现
数据插入、删除时效率高;查找效率低
适合频繁插入,频繁删除的情况
四 Set集合
1 Set接口存储一组唯一,无序的对象
2 实现的类:HashSet、TreeSet
3 常用方法:添加元素:add();
获取元素:不能获取一个元素
删除元素:remove();
判断是否含有某元素:contains();
获取集合大小:size();
迭代:通过迭代器(Iterator,专门用于迭代集合)的hasNext()和next()方法实现
五 Map集合
1 Map接口存储一组键值对象,提供key到value的映射:
Map集合是通过key取value的,没有下标,没有顺序
Map中的键必须是唯一的,键可以是null,值是可以重复的
2 实现的类:HashMap、TreeMap 、Properties
3 常用方法:添加元素:put();
删除元素:remove()
判断键是否存在:containsKey();
判断值是否存在:containsValue();
返回键对应的值:get();
返回键集合:keySet();
迭代:迭代之前一个先得到键集合,通过键获取值,用迭代器迭代
获取集合大小:size();
六 装箱拆箱
1 装箱(box):基本类型转换为引用类型
2 拆箱(unbox):引用类型转换为基本类型
七 排序
1 Collections:Collections是集合的工具类,提供了集合中常用sort的方法
2 Arrays:Arrays是数组的工具类,提供了关于数组常用sort的方法
3 对CompareTo()方法的重写:sort方法内部在排序时,会比较两个集合元素的大小,如果元素是引用类型,那么元素的值是地址编号,则需要对compareTo()进行重写
八 比较
1 变量特点:存储单个
数据类型限制
2 数组特点:存储固定个数(个数必须写,一旦确定,不能改变)
数据类型限制
3 集合特点:存储任意个(个数可写可不写,写了就是默认容量,如果需要更大容量会自动扩容)
数据类型不受限制
集合中保存的是对象的引用
0 0
- Java基本概念-集合框架
- java学习笔记(6)基本概念之集合框架
- Java集合:集合框架
- Java编程思想-集合基本概念
- 黑马程序员_集合框架基本概念
- 黑马程序员_集合框架基本概念
- 【Java】java集合框架
- [Java]Java集合框架
- JAVA集合框架和集合
- 【集合】Java集合框架介绍
- Java集合之集合框架
- [集合]Java的集合框架 Collection集合
- Java集合框架 (一)
- Java集合框架 (二)
- Java集合框架(三)
- Java集合框架
- 也来谈Java集合框架
- 也来谈Java集合框架
- Reconstruct Original Digits from English
- CAFFE框架训练
- 解决git提示Permission denied (publickey)
- 排序入门(1)---PAT-B1015 德才论
- 代理模式学习笔记
- Java基本概念-集合框架
- 性能测试3-性能需求分析
- html5默认情况下,图片底部会有3-5px的边距
- java正则表达式_正整数或小数且小数位数不超过n位
- android studio 导入音频文件到模拟器中
- c++ Primer Plus(第六版)第八章习题,写代码之路
- Android的生命周期和启动模式
- 蓝牙4.0BLE中协议栈详解
- 计算机学习的一些书籍推荐