在Java中,Set是一个不允许重复元素的集合。以下是几种常见的去重方法:
- 使用HashSet:
import java.util.HashSet; import java.util.Set; public class Main { public static void main(String[] args) { Setset = new HashSet<>(); set.add(1); set.add(2); set.add(3); set.add(2); // 重复元素,不会被添加到集合中 System.out.println(set); // 输出:[1, 2, 3] } }
- 使用LinkedHashSet:
import java.util.LinkedHashSet; import java.util.Set; public class Main { public static void main(String[] args) { Setset = new LinkedHashSet<>(); set.add(1); set.add(2); set.add(3); set.add(2); // 重复元素,不会被添加到集合中 System.out.println(set); // 输出:[1, 2, 3] } }
- 使用TreeSet:
import java.util.TreeSet; import java.util.Set; public class Main { public static void main(String[] args) { Setset = new TreeSet<>(); set.add(1); set.add(2); set.add(3); set.add(2); // 重复元素,不会被添加到集合中 System.out.println(set); // 输出:[1, 2, 3] } }
- 使用自定义类实现Set接口:
import java.util.Objects; import java.util.Set; public class Main { public static void main(String[] args) { Setset = new MySet<>(); set.add(new MyInteger(1)); set.add(new MyInteger(2)); set.add(new MyInteger(3)); set.add(new MyInteger(2)); // 重复元素,不会被添加到集合中 System.out.println(set); // 输出:[1, 2, 3] } } class MyInteger implements Comparable { private int value; public MyInteger(int value) { this.value = https://www.yisu.com/ask/value;>> implements Set { // 实现Set接口的方法,如add、remove、contains等 }
这些方法都可以实现Java Set的去重功能,具体使用哪种方法取决于你的需求和场景。