Java常用集合使用方法总结
List集合
一般情况下,我们使用ArrayList类型的即可,定义方式为 List<类型> val=new ArrayList<>();
常用方法如下:
- 添加元素
add(元素); - 获取元素
get(index); - 删除元素
remove(index) 或 remove(元素) - 获取元素个数
size() - 判断是否为空
isEmpty(); - 是否包含某个元素
contains(元素); - 清空数据
clear():该方法使用后是将内存中的数据清空,因此引用该list的值也会变空;
直接给变量名赋值为null; - 元素反置
Collections.reverse(list);
Queue队列
一般情况下,我们使用LinkedList类型的即可,定义方式为 Queue<类型> val=new LinkedList<>();
常用方法如下:
- 添加一个新的元素;
offer(Obicet obj); - 取队首元素的值并删除;
poll(); - 只取队首元素的值;
peek(); - 求队列的长度;
size(); - 判断队列是否为空
isEmpty();
优先级队列
优先级队列PriorityQueue是Queue接口的一种实现方式,可以对其中的元素进行排序,默认是升序排列;
定义方法是Queue<> q=new PriorityQueue<>(cmp);其中cmp是自定义的比较器,可以省略;
常用方法如下:
- 添加元素
add(x); - 取队首元素并删除
poll(); - 查看队首元素
peek(); - 求队列长度
size(); - 判断队列是否为空
isEmpty();
下面是比较器的定义方法:
Comparator<Object> cmp = new Comparator<Object>() {
public int compare(Object o1, Object o2) {
//升序
return o1-o2;
//降序
return o2-o1;
}
};
Stack栈
定义方式为 Stack
常用方法如下:
- 添加一个元素
push(Object element); - 移除堆栈顶部的对象,并作为此函数的值返回该对象
pop(); - 查看堆栈顶部的对象,但不从堆栈中移除它
peek(); - 判断是否为空
isEmpty();
Map键值对
在java中Map是一个接口,HashMap实现了该接口;
定义方式: Map<类型,类型> counts = new HashMap<>();
常用方法如下:
- 判断是否包含某个键
containsKey(Object k); - 得到指定键所对应的值
get(Object k); - 判断map是否为空
isEmpty(); - 添加新的键值对对应关系
put(Object k, Object v); - 移除某个键值对
remove(Object k); - 返回map中包含的键值对
size(); - 返回此映射中包含的映射关系的 Set 视图
Set entrySet( );