方法引用不适用于非静态方法 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"});
where Feed
is a noun and getText
is a getter method and not static,但它工作正常,没有编译错误或任何让我困惑的错误。
我是否遗漏了有关方法引用如何工作的信息?