java - Java将值添加到arraylist到下一个空索引
问题描述
我想将值添加到arraylist 到arraylist 中找到的下一个空索引。
假设我有长度为 5 的 ArrayList。ArrayList 的索引 0-2 已被填充。我想向索引 3 添加另一个值。我有这段代码,但它不起作用(返回索引超出范围异常)。
ArrayList<String> nameList = new ArrayList<String>(5);
nameList.add(0,"a");
nameList.add(1,"b");
nameList.add(2,"c");
for (int i = 0; i < nameList.size(); i++) {
while (!nameList.get(i).isEmpty()) i++;
nameList.add(0,"d");
}
System.out.println(nameList);
有没有办法实现这一目标?
解决方案
与代码中一样,无需使用循环将元素添加到数组列表中。您可以使用 add() 方法直接将元素添加到数组列表中。
Arraylist 自动将元素添加到下一个可用索引。请参阅文档https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html。
向arraylist添加新元素的代码如下
ArrayList<String> nameList = new ArrayList<String>(5);
nameList.add(0,"a");
nameList.add(1,"b");
nameList.add(2,"c");
nameList.add(3, "d");
System.out.println(nameList);
System.out.println(nameList.get(3));
推荐阅读
- python - tkinter ImageTk 在日志文件中创建不需要的日志
- spacy - Spacy NER 的训练数据清理
- sql - 将动态行转置为列 BigQuery
- javascript - 如何在字段上创建具有排序的唯一 json 对象数组?
- python - 从 Python 2.7 和 Python 3 中的“str”继承
- php - api.php 的 Htacess Exeption
- npm - 在“npm adduser”期间输入电子邮件有什么意义?
- amazon-s3 - 大数据暂存区的云与 HDFS
- postgresql - 通过 id 和前一个计数器减去值
- sql-server - 如何创建单独的转换文件而不是覆盖 ssis 输出平面文件?