问题描述:从数据库中查询json并转为list,然后做了一些处理之后返回发现顺序变了
1.json转换为list对象时:这一步是根据json里面的顺序(不会改变顺序)
2.中间将list转为map,然后根据map的keyset获取每个值做一些处理,处理完成增加到返回的list中(这一步会改变顺序,因为map的keyset是无序的,因此不是按照之前list的顺序获取数据)
注意:
对象VO有两个属性:String类型的time,BigDecimal类型的value
在将list<VO>转换为map<String,BigDecimal>时需要判断VO的属性是不是为null,为null会转换失败
因为我的time不存在null的情况,因此只需要过滤value为null的情况
List.stream().filter(item->item.getValue()!=null).collect(Collectors.toMap(TimeValueVO<BigDecimal>::getTime, TimeValueVO<BigDecimal>::getValue));标签:返回,map,顺序,list,---,json,null,乱序 From: https://www.cnblogs.com/ahulwj/p/17834033.html