Filter 是继承了 ArrayList。
Filter 新加了几个 remove 方法,用于移除前端查询条件中的特殊字段。但是 remove(Object o) 是 ArrayList 的方法,调用该方法去移除可能会导致 Filter 语义错误。
正确的方法
Filter newFilterA = filter.remove("name");
Filter newFilterB = filter.remove(Arrays.asList("name", "age"));
错误的用法
FilterOp name = filter.getFilterOp("name");
filter.remove(name);
后续版本,调用 remove(Object) 会抛出异常。