gpt4 book ai didi

java - 将对象插入数组列表

转载 作者:行者123 更新时间:2023-12-01 14:06:49 25 4
gpt4 key购买 nike

我有一个包含 50 个随机整数的数组列表。我要求用户删除一个号码,并且该号码的所有出现都将从列表中删除。我用的是

while (randInts.contains(removeInt) )
{
if (randInts.get(i) == removeInt)
randInts.remove(randInts.get(i));
i++;

}

System.out.println("\n" + randInts.toString());
System.out.println("\n" + randInts.size());`

问题的另一部分是提示用户输入另一个号码。每次出现第二个提示号码后都会插入上面删除的号码。我在第二部分遇到问题,因为我不断收到 IndexOutOfBoundsException。

最佳答案

改用LinkedList;当您需要按顺序遍历但不是真正的随机访问,以及当您需要在列表中间插入和删除元素时,这是一个更好的选择。

您可以通过简单的操作来完成您想要的任务(删除 removeInt 的所有实例并在 insertAfterInt 的每个实例之后插入 removeInt)列表迭代器的遍历:

ListIterator<Integer> li = randInts.listIterator();
while(li.hasNext()) {
int i = li.next();
if(removeInt == i) // assumes removeInt is an int; use equals() for Integer
li.remove();
if(insertAfterInt == i)
li.add(removeInt); // the iterator will skip this element, so it won't get removed
}

关于java - 将对象插入数组列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18836900/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com