Scala 隐式特性相关功能。
隐式转换
IntelliJ IDEA 允许您调用隐式转换方法和参数。
列出隐式转换
选择一个表达式并按 Ctrl+Shift+Q (在 macOS 上为 Ctrl+Q )以调用适用的隐式转换列表。 列表显示了常规范围在顶部,扩展范围在列表底部。
如果需要,请将隐式转换方法显式化。 按 Alt+Enter 并选择 显式化 或 显式导入方法。

如果您选择 显式化 ,IntelliJ IDEA 将返回带有类名的方法调用。 如果您需要确保编译器导入了您最初想要的特定隐式转换方法,这可能会有所帮助:

如果您选择 显式导入方法 ,该方法将被静态导入,IntelliJ IDEA 返回的仅是其调用而没有类名。 此外,下次打开有用的隐式转换列表时,将会在常规作用域下看到此方法:

列出隐式参数
将文本光标放在使用隐式转换的方法上,然后按 Ctrl+Shift+P 以调用隐式参数。 当您想查看特定调用传递了哪些隐式参数时,这可能对代码分析有帮助。 它还让您查看递归隐式参数。

如果 IntelliJ IDEA 无法找到传递隐式参数的方法调用,它会显示一个弹出消息:

查找隐式元素的用法
您可以使用 查找用法 操作从 implicits 定义导航到它们的用法。 在编辑器中,选择 implicits 定义,然后从上下文菜单中选择 查找用法 Alt+F7。
此功能依赖于字节码索引,还可以用于定位以下在源代码中不可见的隐藏元素:
apply/unapply方法调用单一抽象方法 (SAM)类型实例化
foreach/map/flatMap/filter/withFilter调用通过 for-comprehension

隐式转换自动导入
IntelliJ IDEA 支持未解析隐式转换的自动导入。 请在编辑器中输入您的代码。 将文本光标放在未解析的表达式处,按 Alt+Enter ,然后从建议选项列表中选择转换为 import。 因此,IntelliJ IDEA 会添加必要的导入语句。