Java集合操作精华总结
一.Set
1.HashSet
boolean add(E e) 添加
访问
boolean remove(E e) 删除
Iterator<E> iterator 遍历
int size() 大小 boolean isEmpty() 是否为空
boolean contains(Object o) 是否包含
void clear() 清空(删除所有元素) Object[] toArray()
<T> T[] toArray(T[] a)
2.LinkedHashSet
boolean add(E e) 添加
访问
boolean remove(E e) 删除
Iterator<E> iterator 遍历
int size() 大小 boolean isEmpty() 是否为空
boolean contains(Object o)是否包含
void clear() 清空(删除所有元素)
3.TreeSet
boolean add(E e) 添加
访问
boolean remove(E e) 删除
Iterator<E> iterator 遍历
int size() 大小 boolean isEmpty() 是否为空
boolean contains(Object o) 是否包含
void clear() 清空(删除所有元素) Comparator<? super E> comparator() 返回用于对该集合中的元素进行排序的比较器,或null,如果此集合使用其元素的natural ordering 。
E first() 返回集合中当前的第一个(最低)元素
E last()
E pollFirst() 检索并删除第一个(最低)元素,或返回 null如果该集合为空.
E pollLast()
E lower(E e) 返回这个集合中最大的元素严格小于给定的元素,如果没有这样的元素,则返回 null 。
二.List
1.ArrayList
boolean add(E e) void add(int index,E element) 添加
E get(int index) 访问
int indexOf(Object o) 返回指定元素第一次出现的索引
boolean remove(int index)
boolean remove(Object o) 删除 Iterator<E> iterator()
ListIterator<E> listIterator()
ListIterator<E> listIterator(int index) 遍历
int size() 大小
boolean isEmpty() 是否为空
boolean contains(Object o) 是否包含
void clear() 清空(删除所有元素)
Object[] toArray()
<T> T[] toArray(T[] a)
2.Stack
E push(E item) 压入堆栈
E peek() 查看堆栈顶部的兑现,但不移除
E pop() 移除顶部的对象并返回
boolean empty() 是否为空
int search(Object o) 返回对象在堆栈中的位置,以1为基数
3.LinkedList
添加:
public boolean add(Object element): 元素将被添加到链表的最后;
public boolean add(int index, Object element): 元素将被添加到链表指定索引的位置(从0开始);
public boolean addFirst(Object element): 在头部插入;
public boolean addLast(Object element): 在尾部插入;
访问:
E getFirst()
E getLast()
E get()----不用
删除:
remove(): 删除第一个元素;
remove(int index): 删除指定索引位置的元素(从0开始);
removeFirst(): 删除第一个元素;
removeLast(): 删除最后一个元素;
clear(): 清空列表;
list.subList(1,3).clear():根据范围删除列表元素; boolean contains() 是否包含
void set(int index,element) 替换元素
int indexOf() 查找元素位置
实现栈:
void addFirst(T v)-----push
T getFirst()-----------peek
T removeFirst()--------pop
boolean isEmpty()------empty
String toString()------打印栈元素
实现队列;
private Queue<T> storage = newLinkedList<T>();
void offer(T v)-------插入队尾
void add(T v)---------插入,不违反容量限制
T peek()--------------得到队头,但不移除
T element()----------- 此方法与 peek 方法的惟一不同是,如果此队列为空,它会抛出一个异常
T poll()--------------得到对头,并移除
T remove()------------此方法与 poll 方法的不同在于,如果此队列为空,它会抛出一个异常
boolean isEmpty()------队列是否为空
String toString()------打印队列元素
三.Queue
1.PriorityQueue
boolean add(E e)
boolean offer(E e)-------------------添加
E peek()
E poll()-----------------------------获取对头
boolean remove(Object o)-------------删除
int size()---------------------------大小
Iterator<E> iterator()---------------遍历 boolean contains(Object o)-----------是否包含
Comparator<? super E> comparator()---返回用来对此队列中的元素进行排序的比较器;如果此队列根据其元素的自然排序进行排序,则返回null
Object[] toArray()
<T> T[] toArray(T[] a)
四.Map
V put(K key, V value) ------添加
V get(Object key) ----------访问
remove(Object key) ---------删除
遍历:
entrySet()------得到键值对
keySet()--------得到键
values()--------得到值 int size()----------大小
boolean isEmpty()---是否为空


Java集合操作精华总结的更多相关文章
- JAVA集合操作的利器:CollectionUtils
使用 CollectionUtils 中四个方法之一执行集合操作.这四种分别是 union(),intersection();disjunction(); subtract(); 下列例子就是演示了如 ...
- JAVA 集合操作总结
1.Collection 1.基本操作 对集合的基础操作 1.boolean add(Object o) //添加对象到集合 2.boolean remove(Object o) //删除指定的对象 ...
- JAVA集合操作异常 ---------Collections.unmodifiableCollection
1.问题原因 这两天在做开发的时候,在一个首页的列表哪里操作了ArrayList集合,在做递归删除的时候用的是Iterator对象(至于为什么用,来个链接https://blog.csdn.net/m ...
- java 集合操作小结
Map<String,String> m1=new HashMap<String,String>(); m1.put("zara", "name1 ...
- Java集合操作类Collections的一些常用方法
public static void main(String[] args) { List<Integer> list = new ArrayList<Integer>(); ...
- JAVASE02-Unit04: 集合框架 、 集合操作 —— 线性表
Unit04: 集合框架 . 集合操作 -- 线性表 操作集合元素相关方法 package day04; import java.util.ArrayList; import java.util.Co ...
- java中的集合操作类(未完待续)
申明: 实习生的肤浅理解,如发现有错误之处.还望大牛们多多指点 废话 事实上我写java的后台操作,我每次都会遇到一条语句:List<XXXXX> list = new ArrayList ...
- java的list集合操作List<T>转化List<Long>
java的list集合操作List<T>转化List<Long> package com.google.common.collect; import com.google.co ...
- java集合并发操作异常解决方法:CopyOnWriteArrayList
一.我们知道ArrayList是线程不安全的,请编写一个不安全的案例并给出解决方案 HashSet与ArrayList一致 HashMap HashSet底层是一个HashMap,存储的值放在Hash ...
随机推荐
- luogu5007 DDOSvoid 的疑惑 (树形dp)
我们来算每个点出现在的集合的个数 设f[i]为i出现的集合个数,g[i]是只选子树i 可以有多少种选法 那就有$g[i]=1+\prod\limits_{j是i的孩子}{g[j]} , f[i]=f[ ...
- [ZJOI2007]仓库建设(斜率优化)
L公司有N个工厂,由高到底分布在一座山上. 工厂1在山顶,工厂N在山脚. 由于这座山处于高原内陆地区(干燥少雨),L公司一般把产品直接堆放在露天,以节省费用. 突然有一天,L公司的总裁L先生接到气象部 ...
- Oracle数据库中遇到的坑
最近在帮别人忙写程序,用的是Oracle数据库,写一篇文章来说说在Oracle中遇到的一些坑: 1. PL/SQL develop的坑: 由于在这里工作环境是内网完全,无奈只能使用PL/SQL 工具, ...
- 华东交通大学2018年ACM“双基”程序设计竞赛部分题解
链接:https://ac.nowcoder.com/acm/contest/221/C来源:牛客网 C-公式题(2) 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其 ...
- angular2路由与express路由冲突的问题
angular2的路由定义了一个/a,如果走angular的路由没问题,如果直接访问/a就会出现cannot GET /a的错误,原因就是express的路由问题. 所以路由走angular2,那ex ...
- ArcGIS for qml -测距
源码:https://github.com/sueRimn/ArcGIS-for-qml-demos 实现求地图上两点之间距离功能 作者: 狐狸家的鱼 Github: 八至 版权声明:如需转载,请联系 ...
- [luogu1110][报表统计]
题目链接 思路 set+map+优先队列就可以水过去.可以发现,每插入一个元素,都会使得操作2中原来相邻的那个差值消失,然后多了两个新的差值.对于新的差值,只要直接扔到优先队列里就好了.那么删除呢.可 ...
- vue $refs的基本用法
<div id="app"> <input type="text" ref="input1"/> <butto ...
- java List集合
List集合包括四种类,分别是ArrayList.LinkedList.Vector.Stack. ArrayList:元素的存储是顺序存储,可以根据数组的下标查询,查询速度快,但是在删除和插入元素时 ...
- 自定义数据类型 typedef
其实就是为数据类型起一个别名. typedef unsigned char AGE; //字符类型AGE x; //等价于 unsigned char x; typedef int * IPointe ...