簡體   English   中英

Java 8 Streams中的動態函數調用

[英]Dynamic function calling in Java 8 Streams

List<?> temp = empObjList.stream()
                    .filter(nestedDo -> nestedDo.getAttrib1() == "subject")
                    .collect(Collectors.toList());

在這里,我將調用方法getAttrib1()。 但是要調用的方法只能動態識別。 我將只獲得函數名稱作為String值。 我想將其動態轉換為功能。 我知道我可以將Reflections用於動態方法調用,但是我不能通過反射來重寫上面的代碼。

我認為您正在尋找的更像是

List<?> temp = empObjList.stream().filter(this::processDo)
                    .collect(Collectors.toList());

其中processDo(nestedDo)是一種進行反射以找出在do上調用哪種方法的方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM