如何在MongoDB中删除数组内的0值元素 仅保留大于0的数值
如何删除数组中的0元素,仅保留大于0的数值
输入示例
{ "data1": [ 0, 1, 1, 0, 0, 1, 1, 0 ] }
预期输出
{ "data1": [ 1, 1, 1, 1 ] }
实现方案
核心逻辑为过滤数组内等于0的元素,仅保留数值大于0的项,不同常用语言的实现如下:
- JavaScript实现
使用数组内置的filter方法直接过滤:
const originData = { "data1": [0,1,1,0,0,1,1,0] } originData.data1 = originData.data1.filter(item => item > 0)
- Python实现
使用列表推导式完成过滤:
origin_data = { "data1": [0,1,1,0,0,1,1,0] } origin_data["data1"] = [i for i in origin_data["data1"] if i > 0]
- Java实现
使用Stream流完成过滤:
import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; public class FilterZeroDemo { public static void main(String[] args) { List<Integer> originList = Arrays.asList(0,1,1,0,0,1,1,0); List<Integer> filteredList = originList.stream() .filter(num -> num > 0) .collect(Collectors.toList()); // 把过滤后的list放入对应对象结构即可 } }
内容的提问来源于stack exchange,提问作者bc110402922
相关产品推荐
相关产品推荐

