集合框架
来源:互联网 发布:php干什么的 编辑:程序博客网 时间:2024/06/04 18:52
Interable
collection
list
链表:内存中储蓄不连续,方便删除和添加。
二叉树用于排序查找
list可以有重复元素
list添加和打印的顺序一致
常用的方法:
add在尾部添加元素
add index在指定位置添加元素
element 把一个元素换成另外一个
clear清除所有的元素
remove 移除此列表中指定位置上的元素。
contains判断元素是否在list中
lastindexof倒着找
Arraylist(用数组存储,是连续的)
ArrayList的构造方法:
ArrayList()
构造一个初始容量为 10 的空列表。
ArrayList(Collection<? extendsE> c)
构造一个包含指定 collection 的元素的列表,这些元素是按照该 collection 的迭代器返回它们的顺序排列的。方法:
首先四种添加方法要两两区分:
add(E e)
将指定的元素添加到此列表的尾部。
add(int index,E element)
将指定的元素插入此列表中的指定位置。
addAll(Collection<? extendsE> c)
按照指定 collection 的迭代器所返回的元素顺序,将该 collection 中的所有元素添加到此列表的尾部。
addAll(int index,Collection<? extends E> c)
从指定的位置开始,将指定 collection 中的所有元素插入到此列表中。
get(int index)
返回此列表中指定位置上的元素。
set(int index,E element)
用指定的元素替代此列表中指定位置上的元素。
size()
(遍历数组的时候用size获取长度)
返回此列表中的元素数。
频繁的查找用Arraylist
优点:遍历元素和随机访问元素的效率比较高
添加和删除需要大量移动元素效率低,按照内容查询效率低
remove(Object o)
(也可以用index移除指定未知的元素)
移除此列表中首次出现的指定元素(如果存在)。
linkedlist(用链表存储,不连续)
优点:插入、删除元素时效率比较高
缺点:遍历和随机访问元素效率低下
常用方法:
addFirst(E e)
将指定元素插入此列表的开头。
addLast(E e)
将指定元素添加到此列表的结尾。
element()
获取但不移除此列表的头(第一个元素)。
hashset
底层是数组和链表
添加,查询,删除快。
相同的字符串肯定具有相同的hashcode
修改set 元素的唯一 方法就是重写equals方法
如果重写了equals方法,必须重写hashcode方法
HashSet()
构造一个新的空 set,其底层 HashMap 实例的默认初始容量是 16,加载因子是 0.75。
TreeSet:
用二叉树存储(二叉树可以搜索排序)
treeset用compareto去重
先序遍历:先左,在中,在右
二叉树相等用compareto,因为二叉树比较的是大小。
有迭代器方法或接口的可以用增强for循环。
for(类型 变量名 集合){
syso(变量名);
}
map映射
HashTable不允许空键空值
HashMap允许空键空值
一个key对应一个value
TreeMap的key必须实现comporate根据key排序
properties是配置文件。
泛型:解决数据类型操作不统一产生的异常
在类上定义的泛型可以给成员方法,成员属性,和static用。
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 【PHP】高级面试题之十万个为什么?(二)
- [转]Qt中添加OpenGL库
- shell数组和declare用法
- Git分支概念
- 分针网—每日分享:PHP接入支付宝教程
- 集合框架
- Linux网络流量实时监控ifstat iftop命令详解
- 557.Reverse Words in a String III(String-Easy)
- rabbitmq移植到arm
- 深度学习笔记——深度学习框架TensorFlow(一)
- QListWidget的插入删除方法
- 程序员经典智力面试题
- SciTe 中文设置(解决乱码,中文界面)
- java ssm使用ajax实现简单分页