首页 > 图灵资讯 > 技术篇>正文
java数组去除重复元素有哪些方法
2024-12-08 16:08:34
java数组去除重复元素有三种主要方法:1. 使用hashset消除重复元素并转换为数组;2. 使用arraylist存储不重复元素并转换为数组;3. 使用arrays.stream().distinct()直接返回去重流并转换为数组。
Java数组去除重复元素的方法
为了去除Java数组中的重复元素,可以使用以下方法:
1. 使用HashSet
- 使用Set
接口,创建哈希集(HashSet)。 - 遍历数组,将每个元素添加到哈希集中。
- 哈希集会自动删除重复元素。
- 将哈希集转换为数组。
代码示例:
立即学习“Java免费学习笔记(深入)”;
import java.util.Arrays; import java.util.HashSet; 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<>(); for (int i : arr) { set.add(i); } // 将哈希集转换为数组 int[] newArr = new int[set.size()]; int index = 0; for (int num : set) { newArr[index++] = num; } // 输出去重后的数组 System.out.println(Arrays.toString(newArr)); } }
2. 使用ArrayList和 indexOf
- 创建一个ArrayList。
- 遍历数组,如果元素在ArrayList中找不到,则将其添加到ArrayList。
- 将ArrayList转换为数组。
代码示例:
立即学习“Java免费学习笔记(深入)”;
import java.util.ArrayList; import java.util.Arrays; public class RemoveDuplicates { public static void main(String[] args) { int[] arr = {1, 2, 3, 4, 5, 1, 2, 3}; // 使用ArrayList去除重复元素 ArrayList<Integer> list = new ArrayList<>(); for (int i : arr) { if (!list.contains(i)) { list.add(i); } } // 将ArrayList转换为数组 int[] newArr = new int[list.size()]; for (int i = 0; i < newArr.length; i++) { newArr[i] = list.get(i); } // 输出去重后的数组 System.out.println(Arrays.toString(newArr)); } }
3. 使用Arrays.stream().distinct()
- Java 8及更高版本提供了Arrays.stream().distinct()方法。
- 此方法返回一个去除重复元素的新流。
- 可以将流转换为数组。
代码示例:
立即学习“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}; // 使用Arrays.stream().distinct()去除重复元素 int[] newArr = Arrays.stream(arr) .distinct() .toArray(); // 输出去重后的数组 System.out.println(Arrays.toString(newArr)); } }
以上就是java数组去除重复元素有哪些方法的详细内容,更多请关注图灵教育其它相关文章!