Java 数组中删除空数据有四种方法:使用 Arrays.stream() 和 filter() 过滤出非空元素。使用 List.of() 和 removeAll() 将空元素添加到新列表中,然后从原始列表中删除。使用 Stream.concat() 和 Stream.of() 将空元素流连接到原始数组流,再过滤出非空元素。使用循环遍历数组,将非空元素添加到新数组中。

Java 数组中删除空数据
在 Java 数组中删除空数据有多种方法,以下是其中一些常用方法:
1. 使用 Arrays.stream() 和 filter()
<code class="java">int[] arr = {1, 2, 0, 4, 5, 0, 7};
// 使用 Arrays.stream() 创建流
IntStream stream = Arrays.stream(arr);
// 使用 filter() 过滤出不为 0 的元素
IntStream filteredStream = stream.filter(n -> n != 0);
// 将过滤后的流转换为数组
int[] newArr = filteredStream.toArray();</code>2. 使用 List.of() 和 removeAll()
立即学习“Java免费学习笔记(深入)”;
<code class="java">List<Integer> list = List.of(1, 2, 0, 4, 5, 0, 7); // 将列表中的所有空数据 (0) 添加到新列表 List<Integer> zeros = List.of(0); // 从列表中删除 newZeros 中的所有元素 list.removeAll(zeros); // 将列表转换为数组 int[] newArr = list.stream().mapToInt(i -> i).toArray();</code>
3. 使用 Stream.concat() 和 Stream.of()
<code class="java">int[] arr = {1, 2, 0, 4, 5, 0, 7};
// 为所有空数据 (0) 创建一个包含 0 的流
Stream<Integer> zeroStream = Stream.of(0);
// 将两个流连接在一起
Stream<Integer> combinedStream = Stream.concat(Arrays.stream(arr), zeroStream);
// 过滤出不为 0 的元素
Stream<Integer> filteredStream = combinedStream.filter(n -> n != 0);
// 将过滤后的流转换为数组
int[] newArr = filteredStream.toArray();</code>4. 使用循环
<code class="java">int[] arr = {1, 2, 0, 4, 5, 0, 7};
int[] newArr = new int[arr.length];
int index = 0;
// 遍历数组
for (int n : arr) {
// 如果 n 不为 0,则将其添加到 newZeros
if (n != 0) {
newArr[index++] = n;
}
}</code>以上就是java数组怎么删除空的数据的详细内容,更多请关注php中文网其它相关文章!
java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号