java - 从 ArrayList 中删除一个元素并将该元素移动到数组 java

标签 java arrays

我正在编写一个方法,从字符串的 ArrayList 中删除一个元素,如果它具有给定的长度,并将删除的字符串放入包含字符串的数组中,我对如何插入元素有点困惑将它们从列表中删除后放入数组中。

我的 ArrayList 叫做 list,它是我程序开头的一个实例变量。

public String[] removeOfLength(String [] arr, int wordLength)
{
    arr = new String[list.size()];
    for(int i = 0; i < list.size(); i++)
    {
        if(list.get(i).length == wordLength)
        {
            list.remove(i);
            //arr[i]
        }
    }
} 

我删除了元素,但我不知道如何将它插入到数组中。 该方法应该返回一个包含已删除字符串的字符串数组。

最佳答案

与其先创建一个数组(它必须与列表本身一样长),不如再次使用一个列表来临时保存删除的字符串。

List<String> removedStrings = new ArrayList<String>();
for(int i = 0; i < list.size(); i++)
{
    if(list.get(i).length == wordLength)
    {
        removedStrings.add(list.remove(i));
    }
}

然后在方法结束时将列表转换成数组

return removedStrings.toArray(new String[removeStrings.size()]);

关于java - 从 ArrayList 中删除一个元素并将该元素移动到数组 java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28059580/

相关文章:

c++ - 一个简单的 vector ,如何正确地重新分配新数组的地址

c++ - 二维数组 : Recording an ambiguous '48' after writing to it

java - 如何最有效地在 java 中对字符串中的数字(可以是超大的)进行排序

java - Selenium 2 Webdriver(无法通过 xpath 找到元素)

java - 使用静态类作为存储

arrays - **在C语言中是做什么的?

java - 在集合中查找重复条目

java - 基于Java的简单部署工具

python - 分配给给定行和列索引的 NumPy 数组的网格

php - 将字符串拆分为日期数组