import java.util.LinkedList;
import java.util.Queue;
import java.util.Stack;
public class Main {
public static void main(String[] args) {
// 队列操作示例
Queue<Integer> queue = new LinkedList<>();
queue.offer(10); // 入队操作
queue.offer(20);
int firstElement = queue.poll(); // 出队操作
// 栈操作示例
Stack<Integer> stack = new Stack<>();
stack.push(10); // 入栈操作
stack.push(20);
int topElement = stack.pop(); // 出栈操作
List<Integer> path = new ArrayList<>();
// 入操作(添加元素)
path.add(10); // 将元素10添加到列表的末尾
path.add(20); // 将元素20添加到列表的末尾
// 出操作(访问和删除元素)
int firstElement = path.get(0); // 访问列表的第一个元素
path.remove(0); // 删除列表的第一个元素
}
}
-
List<Integer> path = new ArrayList<>();
- 这里创建了一个列表(List),名为
path
,其中存储的元素类型是整数(Integer)。 - 使用ArrayList实现,它是动态数组的一种实现,支持随机访问,可以根据索引快速访问元素。
- 可以根据需要进行添加、删除、获取和修改元素。
- 这里创建了一个列表(List),名为
-
Queue<Integer> queue = new LinkedList<>();
- 这里创建了一个队列(Queue),名为
queue
,其中存储的元素类型是整数(Integer)。 - 使用LinkedList实现,它是双向链表的一种实现,支持在队尾添加元素(入队操作)和在队头删除元素(出队操作)。
- 队列是一种先进先出(FIFO)的数据结构,元素按照添加顺序排列,最先添加的元素最先被移除。
- 这里创建了一个队列(Queue),名为
-
Stack<Integer> stack = new Stack<>();
- 这里创建了一个栈(Stack),名为
stack
,其中存储的元素类型是整数(Integer)。 - 使用Java自带的Stack类实现,它是基于向量(Vector)的栈的一种实现,支持将元素压入栈顶(入栈操作)和从栈顶弹出元素(出栈操作)。
- 栈是一种后进先出(LIFO)的数据结构,最后添加的元素最先被移除。
- 这里创建了一个栈(Stack),名为
总的来说,这三种集合都有不同的特点和适用场景:
- List适用于需要随机访问元素的情况;
- Queue适用于实现先进先出的队列;
- Stack适用于实现后进先出的栈。
根据具体的业务需求和操作特点,选择合适的集合类型来存储和处理数据。