removefirst_Java ArrayDeque removeFirst()方法与示例

removefirst

ArrayDeque类removeFirst()方法 (ArrayDeque Class removeFirst() method)

  • removeFirst() method is available in java.lang package.

    removeFirst()方法在java.lang包中可用。

  • removeFirst() method is used to return the first element but with removing the element from this deque.

    removeFirst()方法用于返回第一个元素,但要从此双端队列中删除该元素。

  • removeFirst() method is a non-static method, it is accessible with the class object only and if we try to access the method with the class name then we will get an error.

    removeFirst()方法是一个非静态方法,只能通过类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。

  • removeFirst() method may throw an exception at the time of removing an element from this deque.

    从此双端队列中删除元素时, removeFirst()方法可能会引发异常。

    NoSuchElementException: This exception may throw when this deque is "blank".

    NoSuchElementException :如果此双端队列为“空白”,则可能引发此异常。

Syntax:

句法:

    public T removeFirst();

Parameter(s):

参数:

  • It does not accept any parameter.

    它不接受任何参数。

Return value:

返回值:

The return type of this method is T, it removes the first element with returning the element of this deque.

此方法的返回类型为T ,它通过返回此双端队列的元素来删除第一个元素。

Example:

例:

// Java program to demonstrate the example 
// of T removeFirst() method of ArrayDeque 

import java.util.*;

public class RemoveFirstOfArrayDeque {
    public static void main(String[] args) {
        // Creating an ArrayDeque with initial capacity of
        // storing elements
        Deque < String > d_queue = new ArrayDeque < String > (10);

        // By using add() method to add elements
        // in ArrayDeque
        d_queue.add("C");
        d_queue.add("C++");
        d_queue.add("Java");
        d_queue.add("Php");
        d_queue.add("DotNet");

        // Display Deque Elements
        System.out.println("d_queue before removeFirst(): ");
        System.out.println("ArrayDeque Elements = " + d_queue);

        System.out.println();

        // By using removeFirst() method to remove and 
        // return the first element of ArrayDeque
        String ele = d_queue.removeFirst();
        System.out.println("d_queue.removeFirst(): = " + ele);
        System.out.println();

        // Display Deque Elements
        System.out.println("d_queue after removeFirst(): ");
        System.out.println("ArrayDeque Elements = " + d_queue);
    }
}

Output

输出量

d_queue before removeFirst(): 
ArrayDeque Elements = [C, C++, Java, Php, DotNet]

d_queue.removeFirst(): = C

d_queue after removeFirst(): 
ArrayDeque Elements = [C++, Java, Php, DotNet]


翻译自: https://www.includehelp.com/java/arraydeque-removefirst-method-with-example.aspx

removefirst

Java LinkedList 实战避坑指南:头尾操作、内存泄漏GC优化 LinkedList 是 Java 中支持双向遍历和头尾 O(1) 操作的链表实现,其底层基于双向链表结构,通过 prev/next 引用实现高效插入删除;但随机访问为 O(n),且每个 Node 对象带来额外内存开销 GC 压力。技术价值在于为滑动窗口、撤销栈、消息缓冲等场景提供确定性低延迟操作,而非通用替代 ArrayList;典型应用包括风控引擎实时计数器、订单簿挂单管理、轨迹点缓存等。本文聚焦真实项目中的内存泄漏、ConcurrentModificationException、remove(Obj 阅读详情

相关推荐

【Queue】- 从源码分析ArrayDeque及其常用方法

是Queue和Deque接口的基础集合。ArrayDeque继承至AbstractCollection并实现了Deque, Cloneable, Serializable接口,支持可复制以及序列化操作。ArrayDeque集合是一个基于可循环双指针数组(可扩容)结构实现的双端队列,它既有队列、双端队列的特点,又有栈结构的特点,可用来代替Stack集合进行栈结构的操作。

1+1=王的博客 9696

java集合之LinkedList

概要: 底层实现为双向链表,改易查难。 1,Class public class LinkedList extends AbstractSequentialList implements List, Deque, Cloneable, java.io.Serializable 2,成员变量(只有first和last,所以只能根据index1/2用last一个一个查找

BNMB888的博客 741

基于LinkedList实现队列栈的数据结构实战

队列是一种受限的线性数据结构,只允许在一端进行插入操作(称为“入队”),而在另一端进行删除操作(称为“出队”)。这一限制保证了数据访问顺序的严格性,从而形成了FIFO的行为模式。栈(LIFO)相反,队列不支持随机访问或中间元素的直接修改,所有操作都必须通过标准接口完成,以维护其结构性质。一个完整的队列抽象模型通常包含以下几个关键组成部分:前端(Front):指向即将被移除的元素位置,即队头。后端(Rear):指向最后一个已插入元素的位置,即队尾。容量限制(可选)

weixin_35755434的博客 887

LinkedList 的 removeFirst(), removeLast(), remove(e), remove(index) 方法详解

LinkedList的remove(e), 和方法提供了灵活的方式来移除链表中的元素。这些方法在处理链表数据结构时非常有用,特别是在需要频繁进行元素插入和删除操作的场景中。了解这些方法的用法和注意事项,对于编写高效和健壮的 Java 程序至关重要。

m0_61431263的博客 1294

Java的集合框架---API文档深入研究3.0

Java的集合框架---API文档深入研究3.0

hujieliang123的博客 1687

5.10笔记

如果禁止双向队列的insert_Left()和 remove_Right()方法(或者禁用insert_Right()和remove_Left() 方法),双向队列的功能就跟单向队列的功能一样。1队列(Queue)是特殊的线性表,先进先出FIFO,只允许在队列的前端(front)进行删除操作,而在队列的尾部(rear)进行插入操作,栈不同的地方,队列内部的数据不总是从数组的下标0开始的,因为在移除队列头的元素后,队头的指针会往较高的数组的索引的位置。在队列的两端都可以进行删除和添加元素的操作。

zxl0825的博客 178

集合框架之List和Set

java.util.List接口 extends Collection接口 List接口的特点: 1.有序的集合,存储元素和取出元素的顺序是一致的(存储123 取出123) 2.有索引,包含了一些带索引的方法 3.允许存储重复的元素 List接口中带索引的方法(特有) - public void add(int index, E element): 将指定的元素,...

鲜衣怒马楼兰月 1035

Java基础】ArrayDeque

1. 定义 ArrayDeque:基于数组的双端队列 2. 特点 用作栈时,比Stack快;用作队列时,比LinkedList快。 ArrayDeque的大多数操作运行时的时间分摊下来都是常数时间(O(1))。除了remove,removeFirstOccurrence,removeLastOccurrence,contains,iterator.remove() and the bulk op...

weixin_44580764的博客 370

ArrayDeque源码解析

1、概述 ArrayDeque 是 Deque 接口的变长数组实现,它没有容量限制,会根据需要来扩容。它不是线程安全的,缺乏外部的同步机制,导致它不支持多线程的并发访问。Null 对象是不许存在的,这个类很可能比 Stack 实现的栈和 LinkedList 实现的队列更快。 其绝大多数操作运行在常数时间,除了一些需要线性时间执行的方法:remove、removeFirstOccurrence、removeLastOccurrence、contains、iterator.remove()和批量操作。 它继承

ShawDa's Blog 573

java ArrayDeque详解 学习记录(一)

ArrayDeque详解

bml_bml_的博客 336

深入浅出ArrayDeque的设计和实现

说在前面,阅读本篇文章需要了解循环队列的数组实现,我想你都已经开始看JAVA容器类源代码的文章了,应该已经掌握了。 一、避轻就重,抓住核心 ArrayDeque容器类可能大家平时用得很少,但是其代码的设计和实现真比我们平常经常用的ArrayList,Stack(Vector)要深刻的多!ArrayDeque容器类的方法里有许多,但是核心的方法其实就4个,下面我们会具体介绍,但是要稍有一些耐心,因为...

爱看书的昌 的博客 592

ArrayDeque使用及源码分析

类介绍 ArrayDeque类是Deque接口的一个可变大小的数组实现,我们通常称之为双端队列。该类具有以下一些特点: 该队列没有容量限制,可以根据使用需要自动增长; 该队列不是线程安全的; 不允许存储null; 该队列作为一个栈来使用比stack快,作为一个队列使用比linkedList快。 该双端队列的iterator方法返回的迭代器 基本使用 public...

weixin_32501529的博客 399

Java双端队列Deque及其应用

1.Deque的概念 双向队列:支持在首尾插入和删除元素的线性集合。它具有既具有FIFO(先进先出)特点又具有LIFO(后进先出)的特点,即是队列又是栈; java官方文档推荐用deque实现栈(stack)。 在Java中,Queue的实现类一般都是用LinkedList。 特点: 1.插入、删除、获取操作支持两种形式:快速失败和返回null或true/false 2.既具有FIFO特点又具有LIFO特点,即是队列又是栈 3.不推荐插入null元素,null作为特定返回值表示队列为空 4.未定义基于元

Java硬件工程师的博客 1701

Java双端队列Deque使用方法

Deque是一个双端队列接口,继承自Queue接口,Deque的实现类是LinkedList、ArrayDeque、LinkedBlockingDeque,其中LinkedList是最常用的。 Deque有三种用途: 普通队列(一端进另一端出): Queue queue = new LinkedList()或Deque deque = new LinkedList() 双端队列(两端都可进出) Deque deque = new LinkedList() 堆栈 Deque deque = new Link

m0_37763933的博客 1303

Java 双端队列Deque 方法总结

Java 双端队列Deque 方法总结 双端队列或 Deque 扩展队列以允许元件从两端插入和移除。Deque 类的实例表示双端队列,Deque 接口扩展了 Queue 接口,它声明了方便所有操作的其他方法对于头部以及尾部的队列。它可以用作FIFO队列或LIFO队列ArrayDeque 和 LinkedList类是Deque接口的两个实现类。ArrayDeque 类由数组支持,而 LinkedList 类由链表支持。如果您使用Deque作为堆栈,则应该使用 ArrayDeque 作为 Deque 实现。如

lizefeng1998的博客 964

java 双端队列的实现_java中的双端队列deque使用以及部分原理

直接上代码吧。packagecollections;importjava.util.Deque;importjava.util.LinkedList;/*** @Package collections* @date 2017-11-28下午5:53:32*/public classDequeTest {/***@paramargs*/public static voidmain(String[] ...

weixin_29830257的博客 222

java接口之双端队列

Deque 接口是 double ended queue 的缩写,即双端队列,支持在队列的两端插入和删除元素,继承 Queue接口。 public interface Deque extends Queue Deque接口定义了在两端访问元素的方法,主要包括insert、remove和examine。和Queue定义一样,所有这些方法存在两种形式:一种如果操作失败则抛出异常,另一种则返回一个特殊值(null或false)。后者主要是为有容量限制的队列实现的。 插入: 如果操作失败则抛出异常 void ad

日积月累 290

Java】Stack和Deque

Deque替代Stack

RiceVan的博客 2123
上一篇: Java BigDecimal doubleValue()方法与示例
下一篇: stl中map函数_带有示例的C ++ STL中的map :: size()函数
cumt30111
博客等级 码龄12年 101粉丝 0原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值