Java ArrayList如何在开头添加元素

2024-01-11

我需要将元素添加到ArrayList队列无论如何,但是当我调用该函数来添加元素时,我希望它在数组的开头添加该元素(因此它具有最低的索引),并且如果数组有 10 个元素,则添加新元素会删除最旧的元素元素(索引最高的元素)。

有没有人有什么建议?


List有方法add(int, E) http://docs.oracle.com/javase/7/docs/api/java/util/List.html,所以你可以使用:

list.add(0, yourObject);

之后您可以使用以下命令删除最后一个元素:

if(list.size() > 10)
    list.remove(list.size() - 1);

但是,您可能需要重新考虑您的需求或使用不同的数据结构,例如Queue http://docs.oracle.com/javase/7/docs/api/java/util/Queue.html

EDIT

也许看看 Apache 的CircularFifoQueue https://commons.apache.org/proper/commons-collections/apidocs/org/apache/commons/collections4/queue/CircularFifoQueue.html:

CircularFifoQueue是一个具有固定大小的先进先出队列,如果已满,则替换其最旧的元素。

只需使用最大大小初始化它:

CircularFifoQueue queue = new CircularFifoQueue(10);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java ArrayList如何在开头添加元素 的相关文章

  • JPanel透明背景和显示元素[重复]

    这个问题在这里已经有答案了 我插入一个背景图e 变成 aJPanel但一些界面元素消失了 以下 Java Swing 元素不会出现 标签标题 标签 usuario 标签 密码 按钮加速器 你能否使图像透明或元素不透明 setOpaque f
  • 使用多个构造函数创建不可变类

    我正在阅读这一页 https docs oracle com javase tutorial essential concurrency imstrat html关于在 Java 中创建不可变类 并决定根据页面上概述的规范修改我正在编写的类
  • JUnit 使用 Mockito 测试异步方法

    我已经使用 Spring Framework 版本 5 0 5 RELEASE 在 Java 1 8 类中实现了异步方法 public class ClassToBeTested Autowired private MyComponent
  • @PreUpdate 不适用于 Spring Data JPA

    我有一个实体 Entity EntityListeners MyEntityListener class class MyEntity 还有听者 class MyEntityListener PrePersist PreUpdate pub
  • 如何解决错误:java.lang.ClassNotFoundException:io.netty.util.concurrent.GenericFutureListener?

    昨天我第一次尝试用 Java 制作 Prometheus 客户端 从 Python 开始 最后是 GoLang 是否找到示例 import io prometheus client Counter import io prometheus
  • 如何在 OpenAPI 3.0 中定义字节数组

    我正在将 API 从 Swagger 2 0 迁移到 OpenAPI 3 0 在 DTO 中 我有一个指定为字节数组的字段 Swagger 对 DTO 的定义 Job type object properties body type str
  • firestore快照监听器生命周期和定价之间有什么关系?

    在我的活动中 我有一个字符串列表 这些字符串表示我想要附加快照侦听器的 Firestore 文档 我使用 Acivity ModelView 存储库结构 在活动的 onCreate 中 我向 ViewModelProvider 询问适当的
  • Java:检查给定日期是否在当前月份内

    我需要检查给定的日期是否在当前月份 我编写了以下代码 但 IDE 提醒我getMonth https docs oracle com javase 7 docs api java util Date html getMonth and ge
  • 如何模拟一个方面

    我目前正在使用aspectj 开发一些监控工具 因为这个工具应该是技术独立的 尽可能 所以我没有使用 Spring 进行注入 但我希望我的方面能够经过单元测试 方面示例 Aspect public class ClassLoadAspect
  • Java G1 GC 处理引用对象运行缓慢

    我已经在 J ava 上运行了计数器 它24小时工作 每秒点击通过100次左右 白天 GC 处理时间从 20 60 毫秒缓慢上升到 10000 60000 毫秒 然后下降到 20 60 毫秒 这种模式不时地重复 从 GC 日志中我发现 GC
  • 嵌入式 tomcat 7 servlet 3.0 注释不起作用

    我有一个精简的测试项目 其中包含 Servlet 版本 3 0 用注释声明 如下所示 WebServlet test public class TestServlet extends HttpServlet private static f
  • 用 Java 创建迷宫求解算法

    我被分配了用 Java 创建迷宫求解器的任务 这是任务 Write an application that finds a path through a maze The maze should be read from a file A
  • 如何在一列中存储数组或多个值

    运行 Postgres 7 4 是的 我们正在升级 我需要将 1 到 100 个选定项目存储到数据库的一个字段中 98 的情况下 只会输入 1 个项目 而 2 的情况下 如果是这样的话 会输入多个项目 这些项目只不过是文本描述 截至目前 长
  • 是什么原因导致“对象不是声明类的实例”? [复制]

    这个问题在这里已经有答案了 可能的重复 使用反射调用方法时 为什么会出现 对象不是声明类的实例 https stackoverflow com questions 7202988 why do i get object is not an
  • 为什么在尝试使用 Java 连接到 RDS PostgreSQL 数据库时会收到 SocketTimeoutException?

    我有一个 Spring 应用程序 我试图在 AWS 上托管 几天来我一直在努力配置 我有一个 EC2 实例 并且能够通过 SSH 连接到它 我还在 AWS 中设置了 Postgres RDS 数据库 但我无法使用 IDE 中的代码连接到它
  • Scala repl 抛出错误

    当我打字时scala在终端上启动 repl 它会抛出此错误 scala gt init error error while loading AnnotatedElement class file usr lib jvm java 8 ora
  • Java SE + Spring Data + Hibernate

    我正在尝试使用 Spring Data Hibernate 启动 Java SE 应用程序 并且到目前为止已经完成了以下操作 配置文件 Configuration PropertySource classpath hibernate pro
  • JDK 7 的快速调试/调试构建

    我正在寻找 JDK 的调试 或者我猜他们称之为快速调试构建 以启用在运行时生成的打印程序集以及查找性能问题时所需的其他诊断 就目前情况而言 我似乎找不到可以直接使用的 现成的 快速调试构建二进制包 有人可以帮我提供下载链接 或者至少提供有关
  • 使用 Android 的 Mobile Vision API 扫描二维码

    我跟着这个tutorial http code tutsplus com tutorials reading qr codes using the mobile vision api cms 24680关于如何构建可以扫描二维码的 Andr
  • 将隐藏(生物识别)数据附加到 pdf 上的数字签名

    我想知道是否可以使用 iText 我用于签名 或 Java 中的其他工具在 pdf 上添加生物识别数据 我会更好地解释一下 在手写板上签名时 我会收集签名信息 例如笔压 签名速度等 我想将这些信息 java中的变量 与pdf上的签名一起存储

随机推荐

  • 功能组件嵌套与 props

    我对 React 还很陌生 我有一个关于架构和设计模式的问题 我已经完成了我的第一个项目 交互式图灵机测序仪 http reactiveturing herokuapp com 如果有人感兴趣的话 我发现自己经常声明嵌套函数 例如 func
  • 如何验证Fragments中的EditText并防止Fragment更改?

    说明 我有一个片段活动FirstRun其中包括 5碎片 with 滑动导航 第二个和第三个片段包含 2编辑文本需要用户填写 并且不需要为空或未填写 好的 我可以使用 OnTextChanged 侦听器验证字段 但用户有可能只是滑到下一个片段
  • 选择项目时 onNavigationItemSelected 不调用

    我使用以下代码在导航抽屉中添加页脚视图
  • Python Threading.Event半忙等待的更好解决方案

    我正在使用非常标准的 Threading Event 主线程到达一个运行循环的点 event wait 60 另一个阻塞请求 直到有可用答复为止 然后启动 event set 我希望主线程选择 40 秒 但事实并非如此 来自 Python
  • 我们可以在 SQLite 数据库 (Android) 中存储 .doc .pdf 和 .jpg 文件吗?

    是否可以在 SQLite 数据库中存储像 pdf doc 这样的文件并再次成功检索它们 文件必须完整且再次可读 我知道我们可以存储图像文件 但对于上述情况 即使我们可以存储给定的最大文件大小是多少 好 去吧 将每个文件存储在数据库中比仅使用
  • 如何对 Java 小程序进行签名以便在浏览器中使用?

    我正在尝试在我的网站上部署 Java 小程序 我还需要签名 因为我需要访问剪贴板 我已经遵循了我能找到的所有签名教程 但没有取得任何成功 这是我到目前为止所做的 在 NetBeans 中编写了一个小程序 它在小程序查看器中运行良好 用它制作
  • 如何从BeautifulSoup4中的html标签中找到特定的数据属性?

    有没有办法仅使用 html 中的 data 属性来查找元素 然后获取该值 例如 在 html 文档中使用以下行 ul 我如何检索Sdafdo39通过在整个 html 文档中搜索具有以下内容的元素data bin属性 更准确一点 item d
  • 动态类型保护函数

    我想创建一个类型保护函数来检查对象中的特定键是否具有例如Astring价值 如果我知道键名 这很容易 const data object a one b two c three function hasStringKeyA data any
  • Passport-saml 和 SAML 加密

    我是新来的passport and passport saml 我正在尝试建立一个Node js使用我们大学的 Shibboleth 身份提供商进行单点登录的服务器 我非常接近让一切正常工作 但在 login callback 期间遇到了障
  • 在 Visual Studio 2012 中将 .NET Framework 4.5 降级到 4 以获取 C++ CLR 支持的 DLL 项目?

    当链接 Visual C NET Framework 4 0 支持的项目时 我收到此错误 因为我添加了 C CLR DLL 与 4 5 NET Framework 的引用 error CS0246 The type or namespace
  • 如何在 xml 中设置形状的背景?

    我刚刚使用 android 形状创建了一个红色圆圈
  • Spring Boot:java.time.Duration 的默认序列化从 String 更改为 Number

    我们最近从 Spring Boot 2 1 9 升级到 2 2 1 这导致我们的测试失败 调查得出的结果是 java time Duration默认情况下 类型现在以不同的方式序列化 而不是有字符串 PT15M 在我们现在得到的 JSON
  • 多对象绘制(OpenGL)

    问题是我不知道如何正确绘制两个对象 因为我的另一个对象没有被绘制 这是主要代码 GLuint VertexArrayID glGenVertexArrays 1 VertexArrayID glBindVertexArray VertexA
  • 获取给定周年、给定月份和给定周的开始和结束日期

    如何在 c 4 0 中获取给定年份 int 给定月份 int 和给定周 int example Year 2011 Month 07 week 04 的开始和结束日期 提前致谢 2011 年的开始日期为 07 月 该月的周数为 04 Goo
  • Segue 传递数据后如何重新加载 tableView 数据

    我有两个表视图 一种是用户单击的 另一种是显示数据的 当用户单击第一个表视图中的单元格时 将对我的 firebase 数据库进行查询 并将查询存储在数组中 然后我通过 segue 传递数据 我使用了属性观察器 因此我知道正在设置变量 通过使
  • Ruby 类实例变量与类变量

    I read Ruby 实例变量何时设置 https stackoverflow com questions 826734 when do ruby instance variables get set但何时使用类实例变量我有两种想法 类变
  • MVVM标准化

    有人在Silverlight 发布 http forums silverlight net forums t 159237 aspxMVVM 目前缺乏标准化 因此每个人都有自己的风格 这就是为什么我和 WPF Disciples 的一些人正
  • AutoEventWireup 和 base.OnLoad(e) 调用 Self 导致堆栈溢出

    使用VS2008 C 什么时候AutoEventWireup设置为 true 并在我调用的网络表单中base OnLoad e like protected void Page Load object sender EventArgs e
  • 将 bash 变量放入 zip 命令的文件名中

    在 bash 脚本中 如何使用变量来创建专门命名的压缩文件 例如 我想做这样的事情 VERSION STRING 1 7 3 zip r foo VERSION STRING foo 理想情况下我最终会得到一个名为foo 1 7 3 zip
  • Java ArrayList如何在开头添加元素

    我需要将元素添加到ArrayList队列无论如何 但是当我调用该函数来添加元素时 我希望它在数组的开头添加该元素 因此它具有最低的索引 并且如果数组有 10 个元素 则添加新元素会删除最旧的元素元素 索引最高的元素 有没有人有什么建议 Li