Я рассматривал этот вопрос здесь и, в частности, этот ответ.
List<Long> ids = viewValues.stream().map(ViewValue::getId).collect(Collectors.toList());
Мне было интересно, можно ли это как-то адаптировать для создания обобщенного служебного метода , но я застрял в синтаксисе для части map
и использую какое-то отражение, чтобы получить имя получателя через строку.
Может ли кто-нибудь дать мне несколько советов относительно того, возможно ли это сделать и как исправить этот код?
public static List<String> getStringListOfCollectionProperty(List<T> l, String propName) {
return l.stream().map(T::propName).collect(Collectors.toList());
}
Заранее спасибо.
PS: я не разрешено использовать сторонние библиотеки, такие как Guava et c.