在 Java 中从数组中去除重复值的方法有三种:使用 HashSet、使用 Set API、使用 Stream API。HashSet 是最有效的方法,使用 Set API 和 Stream API 也能轻松实现去重。

如何从 Java 数组中去除重复值
在 Java 中去除数组中重复值的方法有多种,其中最常用的方法如下:
1. 使用 HashSet
使用 HashSet 是去除数组中重复值最有效的方法之一。HashSet 是 Java 中的一个集合类,它自动过滤重复元素。
立即学习“Java免费学习笔记(深入)”;
<code class="java">import java.util.HashSet;
import java.util.Arrays;
public class RemoveDuplicates {
public static void main(String[] args) {
int[] arr = {1, 2, 3, 4, 5, 1, 2, 3};
// 创建一个 HashSet
HashSet<Integer> set = new HashSet<>();
// 将数组元素添加到 HashSet 中
for (int num : arr) {
set.add(num);
}
// 将 HashSet 转换为数组
int[] newArr = new int[set.size()];
int index = 0;
for (int num : set) {
newArr[index++] = num;
}
// 打印去重后的数组
System.out.println(Arrays.toString(newArr));
}
}</code>2. 使用 Set API
Java 中提供了 Collections 类,其中包含一个名为 Set 的方法,可用于轻松地从数组中去除重复值。Set 方法返回一个不可变的 Set,其中包含该数组中的唯一元素。
<code class="java">import java.util.Arrays;
import java.util.Collections;
public class RemoveDuplicates {
public static void main(String[] args) {
int[] arr = {1, 2, 3, 4, 5, 1, 2, 3};
// 使用 Collections.Set 方法
int[] newArr = Arrays.stream(arr)
.boxed()
.distinct()
.mapToInt(Integer::intValue)
.toArray();
// 打印去重后的数组
System.out.println(Arrays.toString(newArr));
}
}</code>3. 使用 Stream API
Java 8 中引入的 Stream API 也可用于去除数组中重复值。distinct() 方法可用于返回一个包含数组中唯一元素的 Stream。
<code class="java">import java.util.Arrays;
import java.util.stream.Collectors;
public class RemoveDuplicates {
public static void main(String[] args) {
int[] arr = {1, 2, 3, 4, 5, 1, 2, 3};
// 使用 Stream API
int[] newArr = Arrays.stream(arr)
.boxed()
.distinct()
.collect(Collectors.toList())
.stream()
.mapToInt(Integer::intValue)
.toArray();
// 打印去重后的数组
System.out.println(Arrays.toString(newArr));
}
}</code>以上就是JAVA怎么去除数组中重复的值的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号