Ссылки на методы не работают с нестатическими методами AFAIK. Я пытался использовать их следующим образом
Arrays.stream(new Integer[] {12,321,312}).map(Integer::toString).forEach(System.out::println);
Что привело к ошибке компиляции, как видно из ссылки.
Проблема
При использовании библиотеки AssertJ
я использовал что-то вроде этого,
AbstractObjectAssert<?, Feed> abstractObjectAssertFeed2 = assertThat(feedList.get(2));
abstractObjectAssertFeed2.extracting(Feed::getText).isEqualTo(new Object[] {Constants.WISH+" HappyLife"});
где Feed
— существительное, а getText
— метод получения и не статический, но он работал нормально без ошибок компиляции или каких-либо ошибок, которые меня озадачили.
Я что-то упустил в том, как работают ссылки на методы?
Integer
сString
, если вы хотите распечатать содержимое потока.Arrays.stream(new Integer[] {12,321,312}).forEach(System.out::println);
работает нормально. - person Anton Balaniuc   schedule 11.04.2017.map(Object::toString)
вместо.map(Integer::toString)
- person Anton Balaniuc   schedule 11.04.2017