集合框架
来源:互联网 发布:湖南软件职业学院图片 编辑:程序博客网 时间:2024/06/08 05:31
集合框架(个人整理)
框架:
为了解决某一个问题,预先设计好的一系列具有继承或实现关系的类与接口;Collections是操作集合的工具类;Arrays是操作数组的工具类;
集合的特点:
元素类型可以不同、集合长度可变、空间不固定;
Collection:
所有集合类的核心接口;
集合分为三大类:
List,Set,Map
集合特点:
List:线性(有序);存放在该集合中的元素是有顺序的,通过前一个元素可以找到下一个元素
Set:集;存放在该集合中的元素不能重复;
Map:映射;存放一列数据对,存放在该集合中的元素都是键值对的形式;(键不能重复)
Iterator:迭代器 遍历集合;
Comerable:比较器;
Comoerator:比较器;
List的接口实现类工具方法:
add();向集合增加;remove();将元素从集合中删除;get();从集合中查询元素;set();从集合中修改元素;size()查询集合长度;
Llist(导入util包)
List list = new
泛型:
用来限制某个集合对象只能放入某种类型的元素;(JDK1.5以后)
实例
public static void main(String[] args) {
// List<String> list = new ArrayList<String>(); //ArrayList底层数据结构数组 最适合查询线程不安全// List<String> list = new LinkedList<String>();//LinkedList底层数据结构链表 并且使用双向链表 List<String> list = new Vector<String>();//底层数据结构也是数组 线程安全 不能使用Int //增加元素 list.add("Hello"); list.add("World"); list.add("GoDie"); //修改元素 如果下标越界,会报错 list.set(2, "c"); //获取元素 System.out.println(list.get(0)); //获取元素个数 int size = list.size(); System.out.println(size); //删除元素方法 list.remove(2); int size1 = list.size(); System.out.println(size1); //遍历--将集合中的每个元素访问一次 /* * 1.普通for * * */ for (int i = 0; i < list.size(); i++) { System.out.print(list.get(i)); } /* * 2.for-each * * */ for (String temp : list) { System.out.print(temp); } /* * 3.迭代器 * * */ Iterator<String> it = list .iterator(); while (it.hasNext()) { //hasNext询问有没有下一个 String str = it.next(); System.out.print(str); }
}
Set接口:
set接口的方法:
add();向集合增加元素;remove(object o)将元素从集合中删除(遍历后取)size();查看集合长度
遍历:
1.for-each2.迭代器
1.一旦重写eauals()方法,就应该重写Hashcode()方法
2.equals 返回true,不要求hashcode返回值相同
set根据两个对象的equals()方法和hashCode();来判断两个对象是否重复
要求equals返回true shashcode值要相同
Map接口:不是直接继承Collection
元素是键值对存在 不允许出现重复的键,值可以重复
Map方法:
put();存入get();取出keySet();将Map里的所有的键取出形成一个SetValues();将Map中所有的值取出形成一个Collectionremove();根据键移除值
HashMap;速度快,不排序
TreeMap;速度慢,排序
Collections.sort 自动排序 升序
Collections.reverse 排序 降序
Collections.shuffle 排序 混序
Comparable 内部比较器 元素天生自带的比较规则,由被比较的元素自己实现
BComparator 外部比较器
0 0
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 集合框架
- 编程2
- Redis缓存与Memcached的比较
- 在Cookie被禁用的情况下使用url rewrite机制保持Session
- java 代码保留小数位方法
- android 6.0 permission exception Can only use lower 8 bits for requestCode
- 集合框架
- linux下挂载windows C、D、E盘
- Setup
- ArcGIS Server 可发布什么类型的服务?
- Hdu 1009 FatMouse' Trade
- 数据结构实验之链表四:有序链表的归并
- GDB 使用教程
- HTML5炙热
- Vim快速入门