开发手册 欢迎您!
软件开发者资料库

Java BeanUtils - 查询或过滤集合

Java BeanUtils查询或过滤集合 - 从简单和简单的步骤学习Java BeanUtils,从基本到高级概念,包括概述,背景,基本,嵌套属性访问,自定义内省,抑制属性,BasicDynaBeans,ResultSetDynaClass,RowSetDynaClass,WrapDynaBean,Lazy DynaBeans ,BeanUtils和ConvertUtils,创建自定义转换器,区域设置感知转换,比较Bean,操作集合,查询或过滤集合,转换集合,标准JavaBeans,动态Bean(DynaBeans),数据类型转换,实用程序对象和类,集合。

描述

可以使用接口 Predicate 在commons-collections中过滤bean的集合,并在评估中提供true或false值一个输入对象.有一个名为 BeanPropertyValueEqualsPredicate 的谓词,它将根据给定值评估set属性值.

语法

  public BeanPropertyValueEqualsPredicate(String propertyName,Object propertyValue)

上面的语法有两个参数,它决定了要评估的属性以及它的预期值.它创建一个 Predicate 用于评估目标对象,如果 propertyName 指定的值等于 propertyValue 指定的值,则返回true;否则它返回false.

属性名由 org.apache.commons.beanutils.PropertyUtils 定义,可以是简单的,索引的,嵌套的或映射.

例如,您可以过滤myCar属性为false的bean集合:

 //创建闭包 BeanPropertyValueEqualsPredicate谓词= new BeanPropertyValueEqualsPredicate("myCar",Boolean.FALSE); //过滤集合 CollectionUtils.filter(myCollection,predicate);

上面的代码过滤'myCollection'集合并返回对象的myCar属性的布尔值.