JAVA怎么去除数组中重复的值

ID:16579 / 打印
在 java 中从数组中去除重复值的方法有三种:使用 hashset、使用 set api、使用 stream api。hashset 是最有效的方法,使用 set api 和 stream api 也能轻松实现去重。

JAVA怎么去除数组中重复的值

如何从 Java 数组中去除重复值

在 Java 中去除数组中重复值的方法有多种,其中最常用的方法如下:

1. 使用 HashSet

使用 HashSet 是去除数组中重复值最有效的方法之一。HashSet 是 Java 中的一个集合类,它自动过滤重复元素。

立即学习“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));     } }

2. 使用 Set API

Java 中提供了 Collections 类,其中包含一个名为 Set 的方法,可用于轻松地从数组中去除重复值。Set 方法返回一个不可变的 Set,其中包含该数组中的唯一元素。

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));     } }

3. 使用 Stream API

Java 8 中引入的 Stream API 也可用于去除数组中重复值。distinct() 方法可用于返回一个包含数组中唯一元素的 Stream。

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));     } }
上一篇: java数组的值怎么从键盘输入
下一篇: java数组中怎么去掉换行符

作者:admin @ 24资源网   2024-11-27

本站所有软件、源码、文章均有网友提供,如有侵权联系308410122@qq.com

与本文相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。