IntelliJ IDEA 常用快捷键整理
IntelliJ IDEA 常用快捷键整理
适用环境:IntelliJ IDEA,Windows 默认 Keymap。
不同 IDEA 版本、插件或自定义 Keymap 可能导致个别快捷键不同,可通过Ctrl + Alt + S→Keymap查询或修改。
1. 高频快捷键速查
1.1 最常使用的快捷键
| 快捷键 | 功能 | 常见用途 |
|---|---|---|
Ctrl + F | 当前文件查找 | 查找变量名、方法名、文本 |
Ctrl + R | 当前文件替换 | 在当前文件中批量替换 |
Ctrl + Shift + F | 全局查找 | 在整个项目或指定目录中查找 |
Ctrl + Shift + R | 全局替换 | 在整个项目或指定目录中替换 |
Ctrl + D | 复制当前行或选中内容 | 快速复制代码 |
Ctrl + Y | 删除当前行 | 删除光标所在行 |
Ctrl + W | 扩大代码选择范围 | 从单词逐步扩展到表达式、语句和代码块 |
Ctrl + Shift + W | 缩小代码选择范围 | 逐步取消扩展选择 |
Ctrl + Z | 撤销 | 撤销上一步操作 |
Ctrl + Shift + Z | 重做 | 恢复被撤销的操作 |
Alt + Enter | 快速修复与意图操作 | 自动导包、修复错误、优化代码 |
Alt + Insert | 生成代码 | 生成构造方法、Getter、Setter、toString() 等 |
Shift + F6 | 重命名 | 安全修改类、方法、变量或文件名 |
Ctrl + Alt + L | 格式化代码 | 统一代码缩进和排版 |
Ctrl + Alt + O | 优化导包 | 删除无用导包并整理导入顺序 |
Ctrl + Alt + V | 抽取变量 | 将表达式提取为局部变量 |
Ctrl + Alt + M | 抽取方法 | 将选中代码封装为新方法 |
Ctrl + Alt + T | 环绕代码 | 使用 if、for、try-catch 等包围选中代码 |
Ctrl + B | 跳转到定义 | 查看类、方法或变量的声明位置 |
Ctrl + Alt + B | 跳转到实现 | 从接口或抽象方法进入具体实现 |
Alt + F7 | 查找使用位置 | 查找类、方法或变量被引用的位置 |
Ctrl + P | 参数信息 | 查看方法调用所需参数 |
Ctrl + Q | 快速文档 | 查看类、方法或变量的文档说明 |
Ctrl + N | 查找类 | 按类名定位并打开类 |
Ctrl + Shift + N | 查找文件 | 按文件名定位并打开文件 |
双击 Shift | Search Everywhere | 搜索类、文件、符号、操作和设置 |
Ctrl + H | 查看类层次结构 | 查看继承和实现关系 |
Ctrl + Shift + Enter | 补全当前语句 | 自动补全括号、分号等 |
Shift + Enter | 在下方新建一行 | 不移动原行内容,直接换到下一行 |
Ctrl + / | 单行注释 | 添加或取消当前行注释 |
Ctrl + Shift + / | 块注释 | 添加或取消多行块注释 |
Shift + F10 | 运行 | 运行当前配置 |
Shift + F9 | 调试 | 以 Debug 模式运行 |
Ctrl + F8 | 添加或取消断点 | 在当前行切换断点 |
F8 | 单步跳过 | 执行当前行,不进入方法内部 |
F7 | 单步进入 | 进入当前行调用的方法 |
F9 | 继续运行 | 运行到下一个断点 |
1.2 高频操作组合
查找和修改变量名
- 查找当前文件内容:
Ctrl + F - 替换当前文件内容:
Ctrl + R - 查找整个项目:
Ctrl + Shift + F - 替换整个项目:
Ctrl + Shift + R - 安全重命名变量、方法或类:
Shift + F6
修改变量名时优先使用
Shift + F6,不要直接使用文本替换。重命名重构能够识别代码引用关系,误改风险更低。
快速整理代码
- 格式化代码:
Ctrl + Alt + L - 优化导包:
Ctrl + Alt + O - 快速修复:
Alt + Enter
快速阅读陌生代码
- 跳转到定义:
Ctrl + B - 跳转到实现:
Ctrl + Alt + B - 查看调用位置:
Alt + F7 - 查看继承关系:
Ctrl + H - 返回上一位置:
Ctrl + Alt + ←
2. Live Templates 与后缀补全
2.1 常用 Live Templates
输入模板缩写后按 Tab 或 Enter 展开。
| 模板 | 展开效果 | 说明 |
|---|---|---|
psvm | public static void main(String[] args) | 生成 main 方法 |
sout | System.out.println(); | 生成输出语句 |
soutv | 输出变量名和变量值 | 调试变量时常用 |
fori | 基于索引的 for 循环 | 常用于数组和列表遍历 |
iter | 增强 for 循环 | 遍历集合或数组 |
itar | 遍历数组 | 生成数组遍历代码 |
ifn | 判断对象为 null | 生成空值判断 |
inn | 判断对象不为 null | 生成非空判断 |
2.2 常用 Postfix Completion
在表达式或变量后输入 .后缀,再按 Tab 或 Enter。
| 后缀 | 示例 | 作用 |
|---|---|---|
.sout | name.sout | 输出变量值 |
.if | condition.if | 生成 if 语句 |
.not | condition.not | 对布尔表达式取反 |
.for | array.for | 生成遍历循环 |
.fori | array.fori | 生成基于索引的循环 |
.var | new User().var | 自动创建变量接收结果 |
.castvar | object.castvar | 类型转换并创建变量 |
.null | object.null | 生成 object == null 判断 |
.nn | object.nn | 生成 object != null 判断 |
.return | value.return | 生成 return value; |
.throw | exception.throw | 生成 throw 语句 |
模板是否可用与语言、上下文和 IDEA 设置有关,可在
Settings→Editor→Live Templates或Postfix Completion中查看。
3. 编辑与代码选择
3.1 基础编辑
| 快捷键 | 功能 |
|---|---|
Ctrl + X | 剪切选中内容;未选中时通常剪切当前行 |
Ctrl + C | 复制选中内容 |
Ctrl + V | 粘贴 |
Ctrl + Shift + V | 打开剪贴板历史 |
Ctrl + Alt + Shift + V | 无格式粘贴 |
Ctrl + Z | 撤销 |
Ctrl + Shift + Z | 重做 |
Ctrl + D | 复制当前行或选中内容 |
Ctrl + Y | 删除当前行 |
Ctrl + Backspace | 删除光标前一个单词 |
Ctrl + Delete | 删除光标后一个单词 |
Shift + Enter | 在当前行下方新建一行 |
Ctrl + Alt + Enter | 在当前行上方新建一行 |
Ctrl + Shift + Enter | 自动补全当前语句 |
Ctrl + Shift + J | 将下一行合并到当前行 |
Tab | 增加缩进 |
Shift + Tab | 减少缩进 |
3.2 选择代码
| 快捷键 | 功能 |
|---|---|
Ctrl + W | 扩大代码选择范围 |
Ctrl + Shift + W | 缩小代码选择范围 |
Shift + Home | 选择到当前行行首 |
Shift + End | 选择到当前行行尾 |
Ctrl + Shift + ← | 向左按单词扩展选择 |
Ctrl + Shift + → | 向右按单词扩展选择 |
Ctrl + Shift + [ | 选择到当前代码块起始位置 |
Ctrl + Shift + ] | 选择到当前代码块结束位置 |
3.3 移动和调整代码
| 快捷键 | 功能 |
|---|---|
Alt + Shift + ↑ | 将当前行向上移动 |
Alt + Shift + ↓ | 将当前行向下移动 |
Ctrl + Shift + ↑ | 将当前语句或方法向上移动 |
Ctrl + Shift + ↓ | 将当前语句或方法向下移动 |
Ctrl + Alt + I | 自动缩进当前行或选中代码 |
Ctrl + Alt + L | 格式化代码 |
Alt + Shift + ↑/↓与Ctrl + Shift + ↑/↓的具体行为可能因代码上下文和 Keymap 版本略有差异。
3.4 注释
| 快捷键 | 功能 |
|---|---|
Ctrl + / | 添加或取消单行注释 |
Ctrl + Shift + / | 添加或取消块注释 |
4. 多光标与批量编辑
| 快捷键 | 功能 |
|---|---|
Alt + 鼠标左键 | 添加多个光标或进行列选择 |
Alt + J | 选择下一个相同内容 |
Ctrl + Alt + Shift + J | 选择所有相同内容 |
Alt + Shift + J | 取消最后一个相同内容选择 |
Ctrl + Shift + F7 | 高亮当前符号在文件中的全部使用位置 |
Shift + F6 | 对符号执行安全重命名 |
多光标和重命名的区别
Alt + J、Ctrl + Alt + Shift + J:同时编辑相同文本。Shift + F6:按照代码语义重命名变量、方法、类和文件。- 修改代码符号时,优先使用
Shift + F6。 - 批量修改普通文本时,使用多光标更合适。
5. 搜索、替换与定位
5.1 文本搜索
| 快捷键 | 功能 |
|---|---|
Ctrl + F | 在当前文件中查找 |
F3 | 跳转到下一个匹配结果 |
Shift + F3 | 跳转到上一个匹配结果 |
Ctrl + R | 在当前文件中替换 |
Ctrl + Shift + F | 在项目或指定目录中查找 |
Ctrl + Shift + R | 在项目或指定目录中替换 |
Alt + F3 | 逐个选中相同文本 |
5.2 按名称定位
| 快捷键 | 功能 |
|---|---|
双击 Shift | 搜索所有内容 |
Ctrl + N | 查找类 |
Ctrl + Shift + N | 查找文件 |
Ctrl + Alt + Shift + N | 查找符号,如方法、字段和变量 |
Ctrl + Shift + A | 查找 IDEA 操作或设置 |
Ctrl + G | 跳转到指定行 |
Ctrl + F12 | 查看当前文件结构 |
5.3 文件位置
| 快捷键 | 功能 |
|---|---|
Ctrl + Home | 跳转到文件开头 |
Ctrl + End | 跳转到文件结尾 |
Ctrl + [ | 跳转到代码块开始位置 |
Ctrl + ] | 跳转到代码块结束位置 |
Ctrl + E | 查看最近打开的文件 |
Ctrl + Shift + E | 查看最近修改的文件 |
Ctrl + Tab | 切换打开的文件或工具窗口 |
6. 代码补全与代码生成
6.1 代码补全
| 快捷键 | 功能 |
|---|---|
Ctrl + Space | 基础代码补全 |
Ctrl + Shift + Space | 智能类型匹配补全 |
Ctrl + Shift + Enter | 补全当前语句 |
Ctrl + P | 显示方法参数信息 |
Ctrl + Q | 显示快速文档 |
Ctrl + F1 | 显示错误或警告说明 |
F2 | 跳转到下一个错误或警告 |
Shift + F2 | 跳转到上一个错误或警告 |
Windows 中
Ctrl + Space经常与输入法切换冲突。可在 IDEA 的Keymap中修改,也可以调整系统输入法快捷键。
6.2 代码生成
| 快捷键 | 功能 |
|---|---|
Alt + Insert | 打开代码生成菜单 |
Ctrl + O | 重写父类或接口方法 |
Ctrl + I | 实现接口方法 |
Ctrl + J | 插入 Live Template |
Ctrl + Shift + T | 创建或跳转到测试类 |
Alt + Enter | 快速修复和意图操作 |
Alt + Insert 常用于生成:
- 构造方法
- Getter 和 Setter
toString()equals()和hashCode()- 重写方法
- 测试方法
- 委托方法
7. 导航与源码查看
| 快捷键 | 功能 |
|---|---|
Ctrl + B | 跳转到定义或声明 |
Ctrl + 鼠标左键 | 跳转到定义,通常等价于 Ctrl + B |
Ctrl + Alt + B | 跳转到具体实现 |
Ctrl + U | 跳转到父类方法或接口声明 |
Ctrl + Shift + B | 跳转到类型声明 |
Ctrl + Shift + I | 快速查看定义 |
Alt + F7 | 查找使用位置 |
Ctrl + Alt + F7 | 以弹窗形式显示使用位置 |
Ctrl + Alt + H | 查看调用层次结构 |
Ctrl + H | 查看类层次结构 |
Ctrl + Shift + H | 查看方法层次结构 |
Ctrl + Alt + ← | 返回上一个导航位置 |
Ctrl + Alt + → | 前进到下一个导航位置 |
Ctrl + Shift + Backspace | 返回上次修改的位置 |
Alt + ↑ | 跳转到上一个方法 |
Alt + ↓ | 跳转到下一个方法 |
Ctrl + Alt + ←/→可能与 Windows、显卡驱动或其他软件的屏幕旋转、桌面切换快捷键冲突。
8. 重构与代码优化
| 快捷键 | 功能 |
|---|---|
Shift + F6 | 重命名 |
Ctrl + Alt + V | 抽取变量 |
Ctrl + Alt + M | 抽取方法 |
Ctrl + Alt + C | 抽取常量 |
Ctrl + Alt + F | 抽取字段 |
Ctrl + Alt + P | 抽取参数 |
Ctrl + Alt + T | 使用语句环绕选中代码 |
Ctrl + Alt + L | 格式化代码 |
Ctrl + Alt + O | 优化导包 |
Ctrl + Alt + I | 自动缩进 |
Ctrl + Shift + U | 切换选中文本的大小写 |
Ctrl + Alt + Shift + T | 打开重构菜单 |
常见重构场景
将表达式提取为变量
new User("Tom", 18);将光标放在表达式上,按 Ctrl + Alt + V:
User user = new User("Tom", 18);将代码提取为方法
选中一段完整代码,按 Ctrl + Alt + M,IDEA 会自动生成方法并替换原代码。
使用语句环绕代码
选中代码后按 Ctrl + Alt + T,可选择:
ifwhilefortry-catchtry-finallysynchronizedRunnable
9. 运行与调试
9.1 运行
| 快捷键 | 功能 |
|---|---|
Shift + F10 | 运行当前配置 |
Alt + Shift + F10 | 选择运行配置 |
Ctrl + F9 | 构建项目 |
Ctrl + Shift + F9 | 编译选中的文件、包或模块 |
9.2 调试
| 快捷键 | 功能 |
|---|---|
Shift + F9 | 启动调试 |
Alt + Shift + F9 | 选择调试配置 |
Ctrl + F8 | 添加或取消行断点 |
Ctrl + Shift + F8 | 查看或管理断点 |
F7 | Step Into,进入方法 |
F8 | Step Over,执行当前行但不进入方法 |
Shift + F7 | Smart Step Into,选择进入具体方法 |
Shift + F8 | Step Out,跳出当前方法 |
F9 | Resume Program,继续运行 |
Alt + F8 | Evaluate Expression,计算表达式 |
调试操作顺序
- 在目标行按
Ctrl + F8设置断点。 - 按
Shift + F9启动调试。 - 使用
F8逐行执行。 - 需要进入方法内部时按
F7。 - 需要直接运行到下一个断点时按
F9。 - 查看临时表达式结果时按
Alt + F8。
10. 代码折叠、窗口与设置
10.1 代码折叠
| 快捷键 | 功能 |
|---|---|
Ctrl + + | 展开当前代码块 |
Ctrl + - | 折叠当前代码块 |
Ctrl + Shift + + | 展开全部代码块 |
Ctrl + Shift + - | 折叠全部代码块 |
10.2 编辑器和工具窗口
| 快捷键 | 功能 |
|---|---|
Ctrl + E | 最近文件 |
Ctrl + Tab | 切换编辑器标签或工具窗口 |
Ctrl + F4 | 关闭当前文件 |
Shift + 鼠标左键 | 点击文件标签时关闭文件 |
Ctrl + Shift + F12 | 最大化或恢复编辑器 |
Esc | 从工具窗口返回编辑器 |
Shift + Esc | 隐藏当前工具窗口 |
F12 | 返回上一个工具窗口 |
Alt + 1 | 打开或关闭 Project 工具窗口 |
Alt + 4 | 打开或关闭 Run 工具窗口 |
Alt + 5 | 打开或关闭 Debug 工具窗口 |
Alt + Home | 定位到导航栏 |
10.3 设置
| 快捷键 | 功能 |
|---|---|
Ctrl + Alt + S | 打开 IDEA 设置 |
Ctrl + Alt + Shift + S | 打开项目结构设置 |
Ctrl + Shift + A | 搜索 IDEA 操作和设置 |
Ctrl + Alt + F11 | 切换全屏模式,部分版本可能不同 |
11. 书签
| 快捷键 | 功能 |
|---|---|
F11 | 添加或取消匿名书签 |
Ctrl + F11 | 添加带助记符的书签 |
Shift + F11 | 查看全部书签 |
Ctrl + Shift + 数字 | 添加数字书签 |
Ctrl + 数字 | 跳转到对应数字书签 |
12. Git 与版本控制
| 快捷键 | 功能 |
|---|---|
| `Alt + “ | 打开版本控制操作菜单 |
Ctrl + K | 提交更改 |
Ctrl + T | 更新项目 |
Alt + Shift + C | 查看最近更改 |
Ctrl + Shift + C | 复制当前文件路径 |
Ctrl + Alt + Shift + C | 复制引用信息 |
Git 快捷键只有在项目已启用版本控制时才有意义。部分操作的实际名称会因 Git 插件版本和 IDEA 版本不同而变化。
13. 快捷键冲突与使用注意事项
13.1 输入法冲突
常见冲突:
Ctrl + Space:可能被输入法切换占用。Ctrl + Shift + F:部分输入法可能用于简繁体切换。Ctrl + Shift + U:部分软件或输入法可能占用。
解决方式:
- 打开 IDEA 设置:
Ctrl + Alt + S - 进入
Keymap - 搜索操作名称
- 右键选择
Add Keyboard Shortcut - 设置新的快捷键
- 删除或保留原快捷键
13.2 系统或显卡驱动冲突
Ctrl + Alt + ←/→ 常用于 IDEA 的前进和后退,但也可能被显卡驱动或桌面管理软件占用。
可以在 Keymap 中搜索:
BackForward
然后重新绑定。
13.3 不要混淆的操作
| 容易混淆的操作 | 正确说明 |
|---|---|
Ctrl + P | 显示方法参数,不是普通代码补全 |
Ctrl + W | 扩大语法范围选择,不只是选中单词 |
Shift + F6 | 按代码语义重命名 |
Ctrl + R | 当前文件文本替换 |
Ctrl + Shift + R | 整个项目或指定目录文本替换 |
Ctrl + Alt + V | 抽取变量 |
Ctrl + Shift + V | 打开剪贴板历史 |
Ctrl + Shift + U | 大小写转换 |
Ctrl + U | 跳转到父类方法或接口声明 |
14. 附录:常用 Java 代码与 API
以下内容不是 IDEA 快捷键,而是常用 Java API。
14.1 复制数组
System.arraycopy( sourceArray, sourceStartIndex, targetArray, targetStartIndex, length);示例:
int[] source = {1, 2, 3, 4, 5};int[] target = new int[3];
System.arraycopy(source, 1, target, 0, 3);复制后:
target = {2, 3, 4}参数说明:
| 参数 | 说明 |
|---|---|
sourceArray | 原数组 |
sourceStartIndex | 从原数组哪个下标开始复制 |
targetArray | 目标数组 |
targetStartIndex | 从目标数组哪个下标开始写入 |
length | 复制元素数量 |
14.2 打印数组
需要先导入:
import java.util.Arrays;打印一维数组:
int[] numbers = {1, 2, 3};
System.out.println(Arrays.toString(numbers));输出:
[1, 2, 3]打印二维数组:
int[][] matrix = { {1, 2}, {3, 4}};
System.out.println(Arrays.deepToString(matrix));输出:
[[1, 2], [3, 4]]14.3 常见错误写法
错误:
Syesrem.arraycopy();arrays.tostring();正确:
System.arraycopy();Arrays.toString();Java 区分大小写,因此:
System的首字母必须大写。Arrays的首字母必须大写。toString中的S必须大写。
15. 推荐掌握顺序
第一阶段:基础编辑
优先掌握:
Ctrl + DCtrl + YCtrl + ZCtrl + FCtrl + RCtrl + /Ctrl + Alt + LAlt + Enter
第二阶段:代码阅读
继续掌握:
Ctrl + BCtrl + Alt + BAlt + F7Ctrl + HCtrl + PCtrl + QCtrl + NCtrl + Shift + N
第三阶段:重构
重点掌握:
Shift + F6Ctrl + Alt + VCtrl + Alt + MCtrl + Alt + TCtrl + Alt + O
第四阶段:调试
重点掌握:
Ctrl + F8Shift + F9F7F8F9Alt + F8
16. 一页记忆版
查找当前文件 Ctrl + F替换当前文件 Ctrl + R全局查找 Ctrl + Shift + F全局替换 Ctrl + Shift + R
复制当前行 Ctrl + D删除当前行 Ctrl + Y扩大选择 Ctrl + W缩小选择 Ctrl + Shift + W
快速修复 Alt + Enter生成代码 Alt + Insert安全重命名 Shift + F6格式化代码 Ctrl + Alt + L优化导包 Ctrl + Alt + O
抽取变量 Ctrl + Alt + V抽取方法 Ctrl + Alt + M环绕代码 Ctrl + Alt + T
跳转到定义 Ctrl + B跳转到实现 Ctrl + Alt + B查找使用位置 Alt + F7查看继承关系 Ctrl + H查看参数 Ctrl + P
查找类 Ctrl + N查找文件 Ctrl + Shift + N搜索所有内容 双击 Shift补全当前语句 Ctrl + Shift + Enter
运行 Shift + F10调试 Shift + F9切换断点 Ctrl + F8单步进入 F7单步跳过 F8继续运行 F9文章分享
如果这篇文章对你有帮助,欢迎分享给更多人!