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 cmp = new Comparator() {
public int compare(Object o1, Object o2) {
//升序
return o1-o2;
//降序
return o2-o1;
}
};
Stack栈
定义方式为 Stackval = new 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( );