出现输出重复元素的情况,一般是由于向 ArrayList 中添加元素时重复添加造成的。可以通过以下示例代码来避免这种情况发生。
例如,在下面的代码中,创建一个 ArrayList,将字符串“hello”添加两次,并使用 foreach 循环输出:
import java.util.*;
public class Test {
public static void main(String[] args) {
ArrayList list = new ArrayList();
list.add("hello");
list.add("world");
list.add("hello");
for(String s:list){
System.out.println(s);
}
}
}
输出结果为:
hello
world
hello
可以看到,输出了重复的元素"hello"。我们可以使用 HashSet 来过滤掉重复元素,将 ArrayList 中的所有元素添加到 HashSet 中,再将 HashSet 转换为 ArrayList,从而消除重复元素。
以下是修改后的示例代码:
import java.util.*;
public class Test {
public static void main(String[] args) {
ArrayList list = new ArrayList();
list.add("hello");
list.add("world");
list.add("hello");
HashSet set = new HashSet(list);
ArrayList newList = new ArrayList(set);
for(String s:newList){
System.out.println(s);
}
}
}
输出结果为:
hello
world
可以看到,输出的元素已没有重复的情况了。
上一篇:ArrayList输出不正确
下一篇:ArrayList输出重复