从 Java 数组中去除重复值的方法有:1. 使用 Set 转换;2. 使用 Map 转换;3. 使用 Collections.sort() 排序并跳过重复元素。
如何在 Java 中从数组中去除重复值
去除数组中重复元素的方法有多种。本文将介绍三种常用的方法:
1. 使用 Set
Set 是 Java 中一个无序集合,它不允许重复元素。我们可以将数组元素添加到 Set 中,然后将 Set 转换回数组。
立即学习“Java免费学习笔记(深入)”;
import java.util.Arrays; import java.util.HashSet; import java.util.Set; public class Main { public static void main(String[] args) { int[] arr = {1, 2, 3, 4, 5, 1, 2, 3}; Set<Integer> set = new HashSet<>(Arrays.asList(arr)); int[] newArr = set.stream().mapToInt(i -> i).toArray(); System.out.println(Arrays.toString(newArr)); } }
2. 使用 Map
Map 是一个键值对集合,其中键是唯一的。我们可以将数组元素作为键添加到 Map 中,然后将 Map 的键转换为数组。
import java.util.Arrays; import java.util.HashMap; import java.util.Map; public class Main { public static void main(String[] args) { int[] arr = {1, 2, 3, 4, 5, 1, 2, 3}; Map<Integer, Integer> map = new HashMap<>(); for (int i : arr) { map.put(i, i); } int[] newArr = map.keySet().stream().mapToInt(i -> i).toArray(); System.out.println(Arrays.toString(newArr)); } }
3. 使用 Collections.sort()
Collections.sort() 方法可以对数组进行排序。排序后,重复元素将相邻排列。我们可以遍历排序后的数组,跳过重复元素。
import java.util.Arrays; public class Main { public static void main(String[] args) { int[] arr = {1, 2, 3, 4, 5, 1, 2, 3}; Arrays.sort(arr); int[] newArr = new int[arr.length]; int j = 0; for (int i = 0; i < arr.length; i++) { if (i == 0 || arr[i] != arr[i - 1]) { newArr[j++] = arr[i]; } } System.out.println(Arrays.toString(newArr)); } }
以上就是java中怎么再数组中去重的详细内容,更多请关注php中文网其它相关文章!
java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号