gpt4 book ai didi

java - 在打印期间跳过 ArrayList 的特定值

转载 作者:行者123 更新时间:2023-12-01 18:38:08 25 4
gpt4 key购买 nike

我的代码如下:

ArrayList<Integer> al = new ArrayList();
al.add(1);
al.add(2);
al.add(3);
al.add(3);
al.add(4);

我想要在打印过程中得到以下图案:

[1,2,4]

我尝试了 for 循环和迭代器,但没有得到所需的输出。

帮我整理一下!

我找到了解决方案,那就是

for(int i=0;i<al.size();i++) {
if(al.get(i)!=3)
System.out.println(al.get(i));
}

感谢您的帮助

现在我想获得相同的输出,不是通过打印,而是通过删除 ArrayList 的元素,我尝试了相同的条件,但出现了异常

答案是

Iterator<Integer> iter = al.iterator();
while (iter.hasNext()) {
if (iter.next().intValue() == 3) {
iter.remove();
}
}
System.out.println(al);

最佳答案

遍历ArrayList中的所有项目并测试它们是否等于3,如果不等于,则打印它们。

for (Integer i : al)  //for each Integer in the al list
{
if (!i.equals(3)) //if it is NOT (!) equal to 3
{
System.out.println(i); //then print it
}
}

显然,如果您想要跳过的不仅仅是数字 3,您需要扩展 if 使用的条件。

从列表中删除元素的注意事项

如果您尝试使用此方法从循环内的列表中删除,您将遇到 ConcurrentAccessException 问题,这将在 this question 中处理。 .

关于java - 在打印期间跳过 ArrayList 的特定值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20946093/

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