Java 如何使用过滤器从jsonlist中删除对象?
我想用过滤器从数组中删除某些对象 这是生成数组的代码(JSON解析器)Java 如何使用过滤器从jsonlist中删除对象?,java,android,arrays,json,Java,Android,Arrays,Json,我想用过滤器从数组中删除某些对象 这是生成数组的代码(JSON解析器) 对不起,我的英语不好,谢谢你的帮助 Peraps您应该使用类而不是映射,并使用java8的流api result = jsonlist.stream() .filter( x -> wandling || (!x.actType.equals("wandling") ) .filter( x -> fiets || (!x.actType.equals("fiets") ) .filter( x -&
对不起,我的英语不好,谢谢你的帮助 Peraps您应该使用类而不是映射,并使用java8的流api
result = jsonlist.stream()
.filter( x -> wandling || (!x.actType.equals("wandling") )
.filter( x -> fiets || (!x.actType.equals("fiets") )
.filter( x -> excursie|| (!x.actType.equals("excursie") )
.collect(Collectors.toList())
看起来应该是这样的这就是我所做的,它很有效
for (int i = jsonlist.size()-1 ; i >= 0; i--) {
if (jsonlist.get(i).get(type).equals("wandeling") && wandeling == false) {
jsonlist.remove(i);
}
}
使用
String.equals
而不是=
来比较要删除wandeling
数据的每个条件下的String?像这样?如果(wandeling==false&&type.equals(“wandeling”),当布尔wandeling为false且数据类型为wandelingYes且条件为true时,我们希望删除wandeling数据,然后从HashMap中检查类型并将其从ArrayList中删除。我不理解此代码,您能再解释一下吗?
"actType":"wandeling"
"actType":"fiets"
"actType":"excursie"
result = jsonlist.stream()
.filter( x -> wandling || (!x.actType.equals("wandling") )
.filter( x -> fiets || (!x.actType.equals("fiets") )
.filter( x -> excursie|| (!x.actType.equals("excursie") )
.collect(Collectors.toList())
for (int i = jsonlist.size()-1 ; i >= 0; i--) {
if (jsonlist.get(i).get(type).equals("wandeling") && wandeling == false) {
jsonlist.remove(i);
}
}