java中list对象可以使用contains去重 - 面试宝典
【摘要】 在Java中,List对象是一个有序的集合,可以包含重复的元素。如果想要去重,可以使用List的contains方法来判断元素是否已经存在于List中。 具体的做法如下:创建一个新的List对象,用于存放去重后的元素。遍历原始的List对象,对于每一个元素,使用contains方法判断新List中是否已经存在该元素。如果新List中不存在该元素,则将该元素添加到新List中。最后,新List...
在Java中,List对象是一个有序的集合,可以包含重复的元素。如果想要去重,可以使用List的contains方法来判断元素是否已经存在于List中。 具体的做法如下:
- 创建一个新的List对象,用于存放去重后的元素。
- 遍历原始的List对象,对于每一个元素,使用contains方法判断新List中是否已经存在该元素。
- 如果新List中不存在该元素,则将该元素添加到新List中。
- 最后,新List中的元素就是去重后的结果。 示例代码如下:
javaCopy codeList<Object> originalList = new ArrayList<>(); // 原始的List对象
// 添加元素到originalList中(省略部分代码)
List<Object> distinctList = new ArrayList<>(); // 用于存放去重后的元素
for (Object element : originalList) {
if (!distinctList.contains(element)) {
distinctList.add(element);
}
}
// 打印去重后的结果
for (Object element : distinctList) {
System.out.println(element);
}
需要注意的是,List的contains方法会遍历整个List来寻找指定的元素,当List的元素较多时,这种方法的效率可能较低。如果对性能有较高要求,可以考虑使用HashSet或LinkedHashSet来进行去重操作。
当然,下面是一个示例代码,展示了如何使用HashSet来去重一个List对象:
javaCopy codeimport java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
public class ListDeduplicationExample {
public static void main(String[] args) {
List<String> originalList = new ArrayList<>();
originalList.add("apple");
originalList.add("banana");
originalList.add("apple");
originalList.add("orange");
originalList.add("banana");
List<String> distinctList = new ArrayList<>(new HashSet<>(originalList));
System.out.println("Original List: " + originalList);
System.out.println("Distinct List: " + distinctList);
}
}
在这个示例中,我们首先创建了一个原始的List对象originalList,并向其中添加了一些重复的元素。然后,我们使用HashSet来去重这个List对象,HashSet会自动去除重复的元素。最后,我们将去重后的元素放入一个新的List对象distinctList中,并打印出原始List和去重后的List。 运行以上代码,输出结果如下:
plaintextCopy codeOriginal List: [apple, banana, apple, orange, banana]
Distinct List: [apple, banana, orange]
可以看到,去重后的List对象distinctList中只保留了一个apple、一个banana和一个orange。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)