赞
踩
Collection
是 Java 中的接口,被多个泛型容器接口所实现。在这里,Collection
是指代存放对象类型的数据结构。
函数名 | 功能 |
---|---|
size() | 返回 this 的长度 |
add(Integer val) | 在 this 尾部插入一个元素 |
add(int idx, Integer e) | 在 this 指定位置插入一个元素 |
get(int idx) | 返回 this 中第 idx 位置的值,若越界则抛出异常 |
set(int idx, Integer e) | 修改 this 中第 idx 位置的值 |
clear() | |
isEmpty() | |
contains() | |
remove(int index) or remove(Object o) |
初始化
List<Integer> list1 = new LinkedList<>(); // 创建一个名字为 list1 的双链表
List<Integer> list2 = new LinkedList<>(list1); // 创建一个名字为 list2 的双链表,将 list1 内所有元素加入进来
// 二维数组
List<Integer>[] ans = new ArrayList[11];
Arrays.setAll(ans, i->new ArrayList<>());
Queue<Integer> q = new ArrayDeque<>();
操作 | 抛出异常 | 返回特殊值 |
---|---|---|
插入 | add() | offer() |
删除 | remove() | poll() |
查询 | element() | peek() |
Deque
是 Java
中的双端队列,我们通常用其进行队列的操作以及栈的操作。
函数名 | 功能 |
---|---|
push(Integer val) | 将一个元素从队头加入this,等效于addFirst |
pop() | 将队头元素删除,等效于removeFirst |
addFirst(Integer val) | 将一个元素从队头加入this |
removeFirst() | 将队头元素删除,并返回该元素 |
addLast(Integer val) | 将一个元素从队尾加入this |
removeLast() | 将队尾元素删除,并返回该元素 |
offerFirst(Integer val) | 将一个元素从队头加入this |
pollFirst() | 将队头元素删除,并返回该元素 |
offerLast(Integer val) | 将一个元素从队尾加入this |
pollLast() | 将队尾元素删除,并返回该元素 |
add(Integer val) | 将一个元素从队尾加入this |
offer(Integer val) | 将一个元素从队尾加入this |
poll() | 将队头元素删除,并返回该元素 |
remove() | 将队头元素删除,并返回该元素 |
peekFirst() | 返回队头元素 |
peekLast() | 返回队尾元素 |
add
、remove
操作在遇到异常时会抛出异常,而offer
、 poll
不会抛出异常。
import java.util.ArrayDeque; import java.util.Deque; public class Main { static Deque<Integer> stack = new ArrayDeque<>(); static int[] a = {1, 2, 3, 4, 5}; public static void main(String[] args) { for (int v : a) { stack.push(v); } while (!stack.isEmpty()) { //输出 5 4 3 2 1 System.out.println(stack.pop()); } } }
import java.util.ArrayDeque; import java.util.Deque; public class Main { static Deque<Integer> deque = new ArrayDeque<>(); static void insert() { deque.addFirst(1); deque.addFirst(2); deque.addLast(3); deque.addLast(4); } public static void main(String[] args) { insert(); while (!deque.isEmpty()) { //输出 2 1 3 4 System.out.println(deque.poll()); } insert(); while (!deque.isEmpty()) { //输出 4 3 1 2 System.out.println(deque.pollLast()); } } }
可看作一个容器,创建之后里面内容可变,大大提高字符串操作效率
方法
public class StringDemo { public static void main(String[] args) { StringBuilder sb = new StringBuilder("afaf"); System.out.println(sb); // 添加 sb.append("abab"); sb.append(3.14); sb.append("aa").append("bb"); System.out.println(sb); // 反转 sb.reverse(); System.out.println(sb); // 获取长度 System.out.println(sb.length()); // 变为 String String str = sb.toString(); System.out.println(str); } }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。