java容器

java中的容器

(1)List

接口:java.util.List<>

实现:

java.util.ArrayList<>:变长数组
java.util.LinkedList<>:双链表

函数:

add():在末尾添加一个元素
clear():清空
size():返回长度
isEmpty():是否为空
get(i):获取第i个元素
set(i, val):将第i个元素设置为val

代码:

        List<Integer> list=new ArrayList<>();
        list.add(1);
        list.add(2);
        list.add(10);

        System.out.println(list.isEmpty());

(2)栈

类:java.util.Stack<>

函数:

  • add():在队尾添加元素
  • remove():删除并返回队头
  • isEmpty():是否为空
  • size():返回长度
  • peek():返回队头
  • clear():清空

代码:

Stack<Integer> stk=new Stack<>();
stk.push(1);
stk.push(2);
stk.push(10);
System.out.println(stk.pop());
System.out.println(stk.peek());

(3)队列

接口:java.util.Queue<>

实现:

  • java.util.LinkedList<>:双链表
  • java.util.PriorityQueue<>:优先队列
    • 默认是小根堆,大根堆写法:new PriorityQueue<>(Collections.reverseOrder())

函数:

  • add():在队尾添加元素

  • remove():删除并返回队头

  • isEmpty():是否为空

  • size():返回长度

  • peek():返回队头

  • clear():清空

    代码:

    Queue<Integer>  q=new LinkedList<>();//不能用ArrayList<>()
    
      q.add(1);
      q.add(2);
      q.add(10);
      System.out.println(q.remove());
      System.out.println(q.peek());
     Queue<Integer> q=new PriorityQueue<>();//小根堆,小的在前面
            q.add(2);
            q.add(1);
            q.add(10);
            q.remove();
            System.out.println(q.peek());
    
posted @ 2023-04-25 20:34  迭起兴衰  阅读(40)  评论(0)    收藏  举报