如何为从方法返回的流启用“类型信息”?
2022-09-04 22:40:16
从几个版本开始,IntelliJ有一个非常有用的功能:当您将语句的各个方法调用放在单独的行上时,IntelliJ将类型信息放在每行上:stream()
但是,如果不直接调用,例如从另一个方法返回该信息,则会省略该信息:stream()
有没有办法说服IntelliJ也在这种情况下显示此类类型信息?
作为纯文本,使用手动插入的注释来“显示”纯文本的问题:
public Stream<Entry<String, String>> withTypeInformation() {
return generateMap() // Map<String, String>
.entrySet() // Set<Entry<String, String>>
.stream() // Stream<Set<Entry<String, String>>>
.filter(e -> !e.getKey().equals("foo")) // Stream<Set<Entry<String, String>>>
.filter(e -> !e.getKey().equals("bar")) // Stream<Set<Entry<String, String>>>
.filter(e -> !e.getKey().equals("now"));
}
public Stream<Entry<String, String>> withoutTypeInformation() {
return withTypeInformation() // no such info
.filter(e -> !e.getKey().equals("foo")) // not here either
.filter(e -> !e.getKey().equals("bar")) // guess what, nothing, too
.filter(e -> !e.getKey().equals("now"));
}
请注意:第一种方法使用返回地图实例的生成器方法。IntelliJ足够聪明,可以给我类型信息?!