亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> java

Java 双端队列接口

Java 双端队列接口

在本教程中,我们将了解 Deque 接口、如何使用它以及它的方法。

Deque Java 集合框架的接口提供了双端队列的功能。它扩展了 Queue 界面。


双端队列的工作

在常规队列中,元素从后面添加并从前面移除。但是,在双端队列中,我们可以前后插入和删除元素 .


实现双端队列的类

为了使用 Deque 的功能 接口,我们需要使用实现它的类:


如何使用双端队列?

在 Java 中,我们必须导入 java.util.Deque 使用 Deque 的包 .

// Array implementation of Deque
Deque<String> animal1 = new ArrayDeque<>();

// LinkedList implementation of Deque
Deque<String> animal2 = new LinkedList<>();

在这里,我们创建了对象 animal1animal2ArrayDequeLinkedList , 分别。这些对象可以使用 Deque 的功能 界面。


双端队列方法

Deque 扩展了 Queue 接口,它继承了Queue接口的所有方法。

除了 Queue 中可用的方法 接口,Deque 接口还包括以下方法:


作为堆栈数据结构的双端队列

Stack Java Collections 的类 框架提供了栈的实现。

不过建议使用Deque 作为堆栈而不是 Stack 类。这是因为 Stack 的方法 是同步的。

以下是 Deque 的方法 接口提供实现栈:


ArrayDeque类中Deque的实现

import java.util.Deque;
import java.util.ArrayDeque;

class Main {

    public static void main(String[] args) {
        // Creating Deque using the ArrayDeque class
        Deque<Integer> numbers = new ArrayDeque<>();

        // add elements to the Deque
        numbers.offer(1);
        numbers.offerLast(2);
        numbers.offerFirst(3);
        System.out.println("Deque: " + numbers);

        // Access elements of the Deque
        int firstElement = numbers.peekFirst();
        System.out.println("First Element: " + firstElement);

        int lastElement = numbers.peekLast();
        System.out.println("Last Element: " + lastElement);

        // Remove elements from the Deque
        int removedNumber1 = numbers.pollFirst();
        System.out.println("Removed First Element: " + removedNumber1);

        int removedNumber2 = numbers.pollLast();
        System.out.println("Removed Last Element: " + removedNumber2);

        System.out.println("Updated Deque: " + numbers);
    }
}

输出

Deque: [3, 1, 2]
First Element: 3
Last Element: 2
Removed First Element: 3
Removed Last Element: 2
Updated Deque: [1]

要了解更多信息,请访问 Java ArrayDeque。


java

  1. C#接口
  2. Java 运算符
  3. Java超级
  4. Java 接口
  5. Java try-with-resources
  6. Java 注释
  7. Java NavigableSet 接口
  8. Java Lambda 表达式
  9. Java中的接口与抽象类:有什么区别?
  10. Java - 接口
  11. Java 9 - 私有接口方法
  12. C# - 接口