Android 实现集合去重的方法

方法一:使用HashSet

  1. 将集合转换为HashSet。
Set<String> set = new HashSet<>(list);
  1. 将HashSet转换回List。
List<String> uniqueList = new ArrayList<>(set);

方法二:使用Java 8的Stream API

  1. 将列表转换为Stream。
Stream<String> stream = list.stream();
  1. 使用distinct()方法去除重复元素。
List<String> uniqueList = stream.distinct().collect(Collectors.toList());

方法三:使用Lombok库

  1. 添加Lombok库依赖到项目。
<dependency>
    <groupId>org.projectlombokgroupId>
    <artifactId>lombokartifactId>
    <version>1.18.20version>
dependency>
  1. 在类中使用@Setter@Getter注解。
import lombok.Setter;
import lombok.Getter;

@Setter
@Getter
public class UniqueData {
    private String value;
}
  1. 创建一个集合,并添加重复数据。
List<UniqueData> list = new ArrayList<>();
list.add(new UniqueData("A"));
list.add(new UniqueData("B"));
list.add(new UniqueData("A"));
  1. 使用removeIf()方法去除重复数据。
list.removeIf(uniqueData -> list.stream().filter(ud -> ud.getValue().equals(uniqueData.getValue())).count() > 1);

方法四:使用第三方库,如UniqueHashSet

  1. 添加UniqueHashSet库依赖到项目。
<dependency>
    <groupId>com.github.kokorin.uniquegroupId>
    <artifactId>unique-hash-setartifactId>
    <version>1.1.0version>
dependency>
  1. 使用UniqueHashSet去除重复数据。
import com.github.kokorin.unique.UniqueHashSet;

Set<String> uniqueSet = new UniqueHashSet<>(list);

以上四种方法都可以用于实现集合去重。方法一是基于HashSet,方法二是基于Java 8的Stream API,方法三是基于Lombok库,方法四是基于第三方库UniqueHashSet

你可能感兴趣的:(Android基础,android,windows,python)