# Scala 隐式特性相关功能。

> For the complete documentation index, see [llms.txt](https://www.jetbrains.com/zh-cn/help/idea/llms.txt).

> **TL;DR**
> 必需插件：   Scala  ： [安装方法](get-started-with-scala.html#scala_plugin)

## 隐式转换

IntelliJ IDEA 允许您调用隐式转换方法和参数。

### 列出隐式转换

选择一个表达式并按  `Ctrl+Shift+Q` （在 macOS 上为  `Ctrl+Q` ）以调用适用的隐式转换列表。 列表显示了常规范围在顶部，扩展范围在列表底部。

> **Note:**
> IntelliJ IDEA 高亮显示了用于所选表达式的隐式转换。 如果 IntelliJ IDEA 无法找到隐式转换，或者找到多个匹配项，则会打开   引入变量  。

[Video](https://resources.jetbrains.com/help/img/idea/2026.3/choose_implicit_conv.mp4)

如果需要，请将隐式转换方法显式化。 按 `Alt+Enter` (Windows), `⌥ ⏎` (macOS), `⌥ ⏎` (IntelliJ IDEA Classic (macOS)), `⌥ ⏎` (macOS System Shortcuts), `Alt+Enter` (XWin), `Alt+Enter` (GNOME), `Alt+Enter` (KDE), `Alt+Enter` (Emacs), `Alt+Enter` (Sublime Text), `⌥ ⏎` (Sublime Text (macOS)), `Alt+Enter` (Visual Studio), `⌥ ⏎` (Visual Studio (macOS)), `Alt+Enter` (NetBeans), `Ctrl+1` (Eclipse), `⌘ 1` (Eclipse (macOS)) 并选择   显式化   或   显式导入方法  。

![显式化](https://resources.jetbrains.com/help/img/idea/2026.3/choose_implicit_with_make_exp.png)

* 如果您选择 显式化 ，IntelliJ IDEA 将返回带有类名的方法调用。 如果您需要确保编译器导入了您最初想要的特定隐式转换方法，这可能会有所帮助： ![明确结果](https://resources.jetbrains.com/help/img/idea/2026.3/make_explicit.png)

* 如果您选择 显式导入方法 ，该方法将被静态导入，IntelliJ IDEA 返回的仅是其调用而没有类名。 此外，下次打开有用的隐式转换列表时，将会在常规作用域下看到此方法： ![明确导入方法](https://resources.jetbrains.com/help/img/idea/2026.3/make_explicit_import_met.png)

### 列出隐式参数

将文本光标放在使用隐式转换的方法上，然后按 `Ctrl+Shift+P` (Windows), `⌃ ⇧ P` (macOS), `⌃ ⇧ P` (IntelliJ IDEA Classic (macOS)), `⌃ ⇧ P` (macOS System Shortcuts), `Ctrl+Shift+P` (XWin), `Ctrl+Shift+P` (GNOME), `Ctrl+Shift+P` (KDE), `Ctrl+Shift+P` (Emacs), `Ctrl+Shift+P` (Sublime Text), `⌃ ⇧ P` (Sublime Text (macOS)), `Ctrl+Shift+P` (Visual Studio), `Ctrl+Shift+P` (Visual Studio (macOS)), `Ctrl+Shift+P` (NetBeans), `Ctrl+Shift+P` (Eclipse), `Ctrl+Shift+P` (Eclipse (macOS)) 以调用隐式参数。 当您想查看特定调用传递了哪些隐式参数时，这可能对代码分析有帮助。 它还让您查看递归隐式参数。

![隐式参数](https://resources.jetbrains.com/help/img/idea/2026.3/implicit_arguments.png)

> **Note:**
> IntelliJ IDEA 高亮显示使用了隐式实参的方法调用。

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

![没有隐式参数弹出窗口](https://resources.jetbrains.com/help/img/idea/2026.3/no_implicit_param.png)

## 查找隐式元素的用法

您可以使用   查找用法   操作从 implicits 定义导航到它们的用法。 在编辑器中，选择 implicits 定义，然后从上下文菜单中选择   查找用法   `Alt+F7` (Windows), `⌥ F7` (macOS), `⌥ F7` (IntelliJ IDEA Classic (macOS)), `⌃ U` (macOS System Shortcuts), `Alt+F7` (XWin), `Alt+Shift+7` (GNOME), `Alt+Shift+7` (KDE), `Alt+F7` (Emacs), `Alt+F7` (Sublime Text), `⌥ F7` (Sublime Text (macOS)), `Shift+F12` (Visual Studio), `⇧ F12` (Visual Studio (macOS)), `Alt+F7` (NetBeans), `Ctrl+G` (Eclipse), `⌘ ⇧ G` (Eclipse (macOS))。

此功能依赖于字节码索引，还可以用于定位以下在源代码中不可见的隐藏元素：

* `应用` / `unapply` 方法调用

* 单一抽象方法 （SAM）类型实例化

* `foreach` / `map` / `flatMap` / `过滤器` / `withFilter` 调用通过 for-comprehension

![查找隐式用法](https://resources.jetbrains.com/help/img/idea/2026.3/implicit_find_usages.png)

## 隐式转换自动导入

IntelliJ IDEA 支持未解析隐式转换的自动导入。 请在编辑器中输入您的代码。 将文本光标放在未解析的表达式处，按 `Alt+Enter` (Windows), `⌥ ⏎` (macOS), `⌥ ⏎` (IntelliJ IDEA Classic (macOS)), `⌥ ⏎` (macOS System Shortcuts), `Alt+Enter` (XWin), `Alt+Enter` (GNOME), `Alt+Enter` (KDE), `Alt+Enter` (Emacs), `Alt+Enter` (Sublime Text), `⌥ ⏎` (Sublime Text (macOS)), `Alt+Enter` (Visual Studio), `⌥ ⏎` (Visual Studio (macOS)), `Alt+Enter` (NetBeans), `Ctrl+1` (Eclipse), `⌘ 1` (Eclipse (macOS))，然后从建议选项列表中选择转换为 import。 因此，IntelliJ IDEA 会添加必要的导入语句。

[Video](https://resources.jetbrains.com/help/img/idea/2026.3/result_of_implicit_auto_import.mp4)

> **Note:**
> 当您将文本光标放在未解析的表达式上时，IntelliJ IDEA 会显示一个弹出窗口，建议导入选项。 您可以在 [Auto Import](settings-auto-import.html)设置中禁用弹出通知。

