Java 如何使用过滤器从jsonlist中删除对象?

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 -&

我想用过滤器从数组中删除某些对象

这是生成数组的代码(JSON解析器)


对不起,我的英语不好,谢谢你的帮助

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);
                    }
                }