gpt4 book ai didi

java - 如何删除 List 中的数据,而该数据在另一个 List 中不可用

转载 作者:行者123 更新时间:2023-11-29 07:26:56 25 4
gpt4 key购买 nike

这是我的要求之一。我无法发布超过 1000 行代码的所有 bean 文件。所以,我只是发布了完全复制我的问题的示例程序。

我有一个如下所示的 POJO 类:

  public class TestDTO {

private String one;

private String two;

private String three;

public String getOne()
{
return one;
}
public void setOne(String one)
{
this.one = one;
}
public String getTwo()
{
return two;
}
public void setTwo(String two)
{
this.two = two;
}
public String getThree()
{
return three;
}
public void setThree(String three)
{
this.three = three;
}

我有一个下面的主要方法,它将为 POJO 类设置值并将所有类对象存储到列表中,如下所示:

 public static void main(String args[]) throws Exception 
{
TestDTO dto = new TestDTO();
dto.setOne("one");
dto.setTwo("two");
dto.setThree("three");

TestDTO dto1 = new TestDTO();
dto1.setOne("one1");
dto1.setTwo("two1");
dto1.setThree("three1");

TestDTO dto2 = new TestDTO();
dto2.setOne("one2");
dto2.setTwo("two2");
dto2.setThree("three2");

List<TestDTO> test = new ArrayList<TestDTO>();
test.add(dto);
test.add(dto1);
test.add(dto2);

List<String> duplicate = new ArrayList<String>();
duplicate.add("one1");
duplicate.add("one");

System.out.println(test.size() + "\t before");

for (int i = 0; i < duplicate.size(); i++) {
for (int j = 0; j < test.size(); j++) {
if (!(test.get(j).getOne().contains(duplicate.get(i)))) {
System.out.println(test.get(j).getOne());
test.remove(j);
}
}
}

System.out.println(test.size() + "\t after");

for (int i = 0; i < test.size(); i++) {
System.out.println(test.get(i).getOne());
System.out.println(test.get(i).getTwo());
System.out.println(test.get(i).getThree());
}

}

上面的代码我有一个List <String>它有一些值(value)。我只需要删除 List <TestDTO> 中的值List <String> 中不可用.在上面的代码中,我的预期结果是一个,one1 在列表中可用,因此如果这些值在“dto”和“dto1”中可用,那么它们应该仍然存在于“测试”列表中。仅需删除 dto2。

此外,我正在使用 JAVA 7。任何线索...

最佳答案

retainAlljava.util.List.retainAll(java.util.Collection) - 仅保留此列表中包含在指定集合中的元素(可选操作)。换句话说,从该列表中删除所有未包含在指定集合中的元素。

关于java - 如何删除 List 中的数据,而该数据在另一个 List 中不可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50472799/

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