gpt4 book ai didi

java - 如何从 ArrayList 中获取重复值?

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

我有一个ArrayList:ArrayList<String> buffer = new ArrayList<String>();

如何从 ArrayList 中获取重复的值?

示例:

fsfs.txt
erwre.txt
wery.txt
wtrtr.txt
erwre.txt
qweq.txt

我的尝试:

有循环:

for(int i = 0; i < buffer.size(); i++) {
for(int j = i + 1; j < buffer.size(); j++) {
if( buffer.get(i).equals(buffer.get(j)) ) {
bufferTemp.add(j, buffer.toString() );
j--;
}
}
}

With iterator:
Iterator<String> i = buffer.iterator();
Iterator<String> j = buffer.iterator();
j.next();
while(i.hasNext() && j.hasNext()) {
if( i.next().equals(j.next() )
System.out.println(i.next());
}

我也尝试使用 Comparable、Comparator 等方式,但不起作用。

最佳答案

您可以创建一个 Set,将您的列表作为参数传递。 Set 将处理重复项。

private static List<String> list = new ArrayList<String>();

public static void main(String[] args) {

list.add("aaa.txt");
list.add("aaa.txt");
list.add("aaa.txt");
list.add("bbb.txt");
list.add("ccc.txt");
list.add("ccc.txt");

Set<String> set = new HashSet<String>(list);

System.out.println(set);
}

关于java - 如何从 ArrayList 中获取重复值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22593621/

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