gpt4 book ai didi

Java:2个包含不同顺序的相同元素的列表 - 如何删除相同的元素?

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

我有这样的情况:

List<MyClass> list_1 = new ArrayList<>();
List<MyClass> list_2 = new ArrayList<>();
list_1.add(elements...);
list_2.add(same elements...);
mixList(list_1); //mixing the inner order between the elements
mixList(list_2);
MyClass mClass = list_1.get(5); //for example place 5
//TODO: How to remove above element who is exist
//in list_2 also, from list_2?

注意 - 它也是相同的元素,但不是相同的对象:

//same elements, different objects
MyClass m1 = new MyClass("name", 1);
MyClass m2 = new MyClass("name", 1);

最佳答案

问题 1:

//same elements, different objects
MyClass m1 = new MyClass("name", 1);
MyClass m2 = new MyClass("name", 1);

要识别它们,您应该实现 equals() 方法。

首先:How to override equals method in java

问题2:

您可以通过编写删除相同的项目

list2.removeAll(list1);

请注意,您必须实现 equals() 方法才能使其正常工作。

关于Java:2个包含不同顺序的相同元素的列表 - 如何删除相同的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32571208/

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