java容器类的操作总结
来源:互联网 发布:修改游戏的软件 编辑:程序博客网 时间:2024/06/03 21:43
java容器类,通过使用泛型,就可以指定容器中存放的对象类型,并且从容器中获取元素时,不需要进行类型转换。当向容器中添加更多元素时,可以自动扩容。而数组一旦生成,数组的容量就不能改变
Collection 添加元素
Collection<Integer> collection=new ArrayList<Integer>();Collections.addAll(collection, 4,5,6);//后面接受一个数组,这个方法快collection.addAll(Arrays.asList(4,5,6));collection.remove(Object or index); 调用一次方法只能删除第一个
List:可修改的序列
List在指定位置添加元素 list.add(index,value)removecontains() 是否包含指定元素indexof 获取元素在序列中的位置编号
一. Collection
是描述所有序列容器的共性的根接口
1,List
ArrayList 常用于随机访问元素,但是在list中插入和移除元素时较慢
LinkedList 通过代价较低的在list中间进行插入和删除操作,提供了优化的顺序访问,但在随机访问方面较慢,特性集较ArrayList更大
都按照插入数据保存元素,但是性能不同
2,Set
HashSet 无序,但是是获取元素最快的方式
TreeSet 按照比较结果的升序保存对象
LinkedHashSet 按照添加的顺序保存
3,Queue
Collection的子类都具有迭代器功能,实现了不重写代码就可以应用与不同类型的容器1.Iterator 只能单向移动 不能指向指定元素 (1)next() 获取(指向)序列的下一个元素 (2)hasNext()检查序列中是否还有元素 (3)remove()将迭代器新近返回的元素删除 2.ListIterator 可以双向移动 list.listIterator(index) 直接指向指定位置的元素 (1)next()下一个 previous()前一个 (2)hasNext() hasPrevious() (3)set(value) 将迭代器新近返回的元素替换
1.1 LinkedList
LinkedList 相对于ArrayList添加了使其作为栈(先进后出)、队列(先进先出)、双端队列的方法
获取列表的头(第一个元素):
getFirst()、element()、数据为空时报错 peek()数据为空时返回null
先返回列表的头,然后删除该元素
remove()、removeFirst()、数据为空时报错 poll()为空时返回null
将元素插入到列表的尾部
addFirst() add() addLast() 在Queue队列实现中 offer()将元素插入到队尾
1.1.2 Stack
任何对Stack的引用,都使用net.mindview.util版本
1.1.3 Set
不保存相同的元素,Set与Collection完全相同的接口,没有额外的功能。只是行为不同。
HashSet 由于查询速度的原因,使用了散列
TreeSet 将数据存储与红黑树结构中 TreeSet构造器中可以接受参数,给定排序方式
1.3 PriorityQueue
插入的对象会在队列中排序,当调用方法时,会获取相应优先级的元素
可以通过Comparator来改变排序规则
4,Map
HashMap 最快的查找技术TreeMap 按照比较结果升序保存键LinkedHashMap 按照插入顺序保存键,还保留了hashmap的查询速度其中map.values()返回的是Collection 集合,可以使用迭代器
方法:put()get()Set<> keySet() 返回所有的键Collection<V> values(); 返回所有的值;
- java容器类的操作总结
- JAVA容器类的总结
- JAVA 容器类总结
- JAVA容器类总结
- java容器类总结
- Java容器类总结
- Java容器类总结
- Java容器类总结
- java容器类总结
- Java容器类总结
- Java容器类总结
- JAVA 容器类总结
- java容器类总结
- java容器类总结
- java之容器类的总结
- java 容器的简单总结
- java容器 -- list的总结
- Java容器的总结整理
- Android开发笔记: WebView的使用方法
- git 命令速查及使用
- 计算中文字长
- Python用subprocess的Popen来调用系统命令
- SylixOS 异步工作队列
- java容器类的操作总结
- php四种基础排序(基础算法)----③插入排序法
- openwrt 7621换源
- List接口和Collections类
- LarkRTC
- 得到当前方法的名字Thread.currentThread().getStackTrace()[1].getMethodName();
- C#动态匿名函数用法示例
- 活动的启动模式
- achartengine之折线图---简单用法