提问者:小点点

如何从列表中选择唯一的项目?


我有一个用户ID列表。它由从不同表中选择的用户ID组成,因此其中有重复的ID。我如何只能从这个列表中选择唯一的ID或可能删除重复的ID?

List < userDto > list = uC.match(dto2);
if (list.size() > 0) {
    for (int i = 0; i < list.size(); i++) {
        System.out.println(list.size());
        System.out.println("Data Found");

        userDto dto3 = new userDto();
        dto3 = uC.get(list.get(i));

        System.out.println(dto3.firstName);
    }
} else {
    System.out.println("Data not Found");
}

我编辑如下,它显示了与列表相同的结果…我是新来的。我不知道怎么了…请帮忙

Set<userDto> list = new HashSet<userDto>(uC.match1(dto2));

    if(list.size()>0){
    for (int i = 0; i < list.size(); i++) {
        System.out.println(list.size());
        userDto dto3=new userDto();
        for (userDto s : list) {
            dto3=uC.get(s);
        }
        System.out.println(dto3.firstName);
        }
    }

共3个答案

匿名用户

将它们全部添加到Set所做的集合中

匿名用户

使用set作为唯一值。

 Set<userDto> hSet = new HashSet<userDto>(list); 

匿名用户

您可以使用Set代替List,因为set存储唯一元素。您也可以将列表转换为Set

 Set<userDto> list=new HashSet<userDto>(uC.match(dto2));