如何从自定义对象列表中获取一个属性

时间:2014-04-10 19:47:01

标签: java guava jxpath

Java - JxPath - Spring

List<MyClass> myClassList填充了MyClass个对象。我正在尝试找到一种最简洁,最快捷的方式从Set<String> a中获取myClassList属性。

class MyClass{

  private String a;
  private String b;


  // setters getters

}

我使用jxpath进行搜索,但我不确定它是否也可以执行上面提到的操作。

JXPathContext ctx = JXPathContext.newContext(myClassList);
Iterate<String> aProps = ctx.iterate("? what to write");

你能帮忙吗?

1 个答案:

答案 0 :(得分:-1)

代替Jxpath,可以在Guava库中进行。

这是实现

    public static final Function<Obj, String> FOO = new Function<Obj, String>() {
            public String apply(Obj input) {
                return input.foo;
            }
        };

List<String> fooList = Lists.transoform(targetList, Object.FOO)
or 
List<String> fooList = Collections2.transoform(targetList, Object.FOO)