我正在编写一个方法,从字符串的 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/