在Intellij Scala插件中显示推断类型

ben*_*rre 23 scala intellij-idea

有没有办法在Intellij的Scala支持中显示派生类型?

例如,如果我正在通过一些光滑的代码摸索,并想知道"用户"val的类型可能是通过缩小键并将鼠标悬停在那将是非常有用的.

    DB.withSession {
      implicit session =>
        val user = users.filter(user => user.email === email && user.password === password).first
    }
Run Code Online (Sandbox Code Playgroud)

知道如何尽可能容易地在IDE中找出"用户"的类型吗?

Cyä*_*gha 42

您可以:

  • 确保文本光标位于变量内,并检查菜单View> Type Info的快捷方式.使用该快捷方式显示类型信息.在OS X上,它是ctrl-shift-P.
  • 或者在"首选项">"IDE设置">"Scala"中设置首选项以在鼠标悬停时显示相同的类型信息.选中"显示延迟鼠标移动的类型信息"并根据需要更改延迟.

在此输入图像描述

或者,您可以显示类型的文档,而不仅仅显示类型信息.即使没有适用的scaladoc或javadoc,它也会显示该类型.

  • 使用快速文档快捷方式(在视图>快速文档中查看),如类型信息一.在OS X上,它是ctrl-J.
  • 或者在"首选项">"IDE设置">"编辑器"中设置首选项以显示鼠标悬停的快速文档 选中"在鼠标移动时显示快速文档"并根据需要更改延迟.

在此输入图像描述

  • 在最新的IDEA中,悬停选项位于"设置 - >语言和框架 - > Scala - >编辑器选项卡"下. (6认同)

End*_*Neu 7

除了@Cyäegha方法之外,您甚至可以告诉idea推断类型并为您添加类型。

在OS X上,转到变量,单击alt + enter,您应该会看到

在此处输入图片说明

单击它后,您将看到

val test: String = "dsds"
Run Code Online (Sandbox Code Playgroud)

快捷键位于语音“ 显示意图动作”处