List<?> temp = empObjList.stream()
.filter(nestedDo -> nestedDo.getAttrib1() == "subject")
.collect(Collectors.toList());
这里我调用方法getAttrib1()。但是要调用的方法只能动态识别。我将仅以String值的形式获取函数的名称。我想动态地将其转换为函数。我知道我可以使用Reflections进行动态方法调用,但我无法通过反射来重写上述代码。在Java 8 Streams中调用动态函数
嘿,你不觉得你需要改变'==“主题”'为'.equals(“subject”)'? – Turtle 2015-04-06 12:41:55
如果“主题”是一个函数的名称,没有反思就无法做到。 – 2015-04-06 12:46:34
我不确定你的目标究竟是什么,但我确定有更好的方法可以做到这一点,而不是将方法名称作为字符串传递,然后使用反射。你如何向我们展示更大的图片? – Philipp 2015-04-06 12:54:00