List myList =
Arrays.asList("a1", "a2", "b1", "c2", "c1");
myList
.stream()
.filter(s -> s.startsWith("c"))
.map(String::toUpperCase)
.sorted()
.forEach(System.out::println);
为什么String的toUpperCase不是静态方法,但可以String::toUpperCase来调用?
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- 农夫丶果园 2019-04-15 00:31关注
因为你此时是String的一个Stream,所以可以传递String类的方法名称作为方法引用,来让Stream中的元素调用改方法,和方法是否是静态的没有关系
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决评论 打赏 举报无用 2