💜 想真正擅长编程? 从一门课程开始,100% 免费

4-4、IDEA实用快捷键

快捷键是提升开发效率最直接的方式。同样一个操作,鼠标点3下和键盘按1下,效率差3倍。这节给你整理新人最该掌握的快捷键。


一、必记快捷键(每天用100次)

搜索类

快捷键 功能 说明
双击Shift 万能搜索 搜类、搜文件、搜操作,啥都能搜
Ctrl + N 搜索类 按类名搜索
Ctrl + Shift + N 搜索文件 按文件名搜索
Ctrl + Shift + F 全局搜索 在整个项目里搜文字内容
Ctrl + Shift + R 全局替换 在整个项目里替换文字
Ctrl + E 最近文件 打开最近访问的文件列表
Ctrl + Shift + E 最近编辑的文件 只显示编辑过的文件

双击Shift是新人最该记住的,搜啥都行,找不到东西的时候按一下。

代码编辑类

快捷键 功能 说明
Alt + Enter 万能修复键 报错了按一下,自动提示解决方案
Ctrl + Space 代码补全 基础补全(和输入法冲突就改成Alt+/)
Ctrl + Alt + L 格式化代码 自动整理缩进和格式
Ctrl + Alt + O 优化导入 删除没用的import
Ctrl + D 复制当前行 向下复制一行
Ctrl + Y 删除当前行 删除光标所在行
Ctrl + W 扩大选区 逐级扩大选中范围
Ctrl + Shift + W 缩小选区 逐级缩小选中范围
Shift + Alt + ↑ 上移当前行 把当前行往上移
Shift + Alt + ↓ 下移当前行 把当前行往下移
Ctrl + Shift + ↑ 上移代码块 移动整个方法
Ctrl + Shift + ↓ 下移代码块 移动整个方法
Ctrl + / 行注释 注释/取消注释当前行
Ctrl + Shift + / 块注释 注释/取消注释选中区域
Ctrl + Shift + U 大小写转换 选中文字转大写/小写

查看代码类

快捷键 功能 说明
Ctrl + 鼠标点击 跳转到定义 点方法名/变量名跳到定义处
Ctrl + B 跳转到定义 同上,键盘版
Ctrl + Alt + B 跳转到实现 接口跳到实现类
Ctrl + U 跳转到父类/接口 实现类跳到接口
Alt + F7 查看引用 谁调用了这个方法/变量
Ctrl + F12 查看类结构 弹出类的方法和字段列表
Ctrl + H 查看类继承关系 显示继承树
Ctrl + Alt + H 查看方法调用层次 谁调了这个方法,这个方法调了什么
Ctrl + P 查看参数信息 方法参数提示
Ctrl + Q 查看文档 查看方法/类的JavaDoc

代码生成类

快捷键 功能 说明
Alt + Insert 生成代码 getter/setter/构造方法/toString等
Ctrl + Alt + T 包裹代码 try-catch/if/for等包裹选中代码
Ctrl + J 查看Live Template 查看所有代码模板
sout + Tab 打印语句 System.out.println()
psvm + Tab main方法 public static void main(String[] args)
fori + Tab for循环 for(int i=0; i<; i++)
iter + Tab 增强for循环 for(Object item : list)
.var + Tab 提取变量 xxx.var自动生成变量声明
.if + Tab if包裹 xxx.if自动生成if判断
.for + Tab for循环 list.for自动生成for循环

重构类

快捷键 功能 说明
Shift + F6 重命名 重命名变量/方法/类,所有引用同步更新
Ctrl + Alt + V 提取变量 把表达式提取为变量
Ctrl + Alt + M 提取方法 把选中代码提取为方法
Ctrl + Alt + F 提取字段 把局部变量提取为类字段
Ctrl + Alt + P 提取参数 把变量提取为方法参数
F6 移动 移动类/方法到其他包或文件

运行调试类

快捷键 功能 说明
Shift + F10 运行 运行当前主类
Shift + F9 调试 调试模式运行
F8 单步执行 不进入方法内部
F7 单步执行 进入方法内部
F9 继续执行 跳到下一个断点
Ctrl + F8 切换断点 添加/取消断点
Ctrl + Shift + F8 查看所有断点 查看和管理断点
Ctrl + F2 停止运行 停止当前运行的程序

Git类

快捷键 功能 说明
Ctrl + K 提交 打开Commit窗口
Ctrl + Shift + K 推送 打开Push窗口
Ctrl + T 拉取 从远程拉取更新
Alt + 9 打开Git面板 显示Git变更列表
Alt + ` 快速Git操作 弹出Git快捷操作菜单

窗口类

快捷键 功能 说明
Alt + 1 项目面板 打开/关闭项目文件树
Alt + 2 收藏面板 打开收藏夹
Alt + 3 搜索面板 打开搜索结果
Alt + 4 运行面板 打开运行/调试输出
Alt + 5 调试面板 打开调试器
Alt + 6 TODO面板 查看TODO注释
Alt + 7 结构面板 查看当前文件结构
Ctrl + Shift + F12 切换全屏 隐藏所有面板,编辑器全屏
Ctrl + Tab 切换标签页 在打开的文件间切换

二、高频使用场景

场景1:找某个方法在哪调用了

  1. 光标放在方法名上
  2. Alt + F7 → 显示所有调用位置
  3. 点击结果跳转过去

场景2:接口找实现类

  1. 光标放在接口方法上
  2. Ctrl + Alt + B → 跳到实现类的方法

场景3:快速生成getter/setter

  1. 在类里写好字段
  2. Alt + Insert → 选Getter and Setter
  3. 选择要生成的字段 → 点OK

场景4:代码报红了

  1. 光标放在红色代码上
  2. Alt + Enter → 看提示的解决方案
  3. 选择方案 → 回车执行

常见修复:

  • 导入缺失的类
  • 创建不存在的方法
  • 添加异常捕获
  • 转换类型

场景5:重命名变量

  1. 光标放在变量名上
  2. Shift + F6 → 输入新名字
  3. 回车 → 所有引用自动更新

场景6:把一段代码提取成方法

  1. 选中要提取的代码
  2. Ctrl + Alt + M → 输入方法名
  3. 回车 → 自动生成方法,原位置替换为方法调用

场景7:快速包裹try-catch

  1. 选中代码
  2. Ctrl + Alt + T → 选try/catch
  3. 自动包裹

场景8:格式化整个文件

  1. Ctrl + A 全选
  2. Ctrl + Alt + L 格式化
  3. Ctrl + Alt + O 优化导入

场景9:在文件内搜索

  1. Ctrl + F → 在当前文件搜索
  2. Ctrl + R → 在当前文件替换
  3. F3 / Shift + F3 → 上一个/下一个匹配

场景10:快速回到上一个编辑位置

  1. Ctrl + Alt + ← → 回到上一个编辑位置
  2. Ctrl + Alt + → → 前往下一个编辑位置

在多个文件间跳来跳去时特别好用。


三、自定义快捷键

修改快捷键

File → Settings → Keymap

搜索你要改的操作 → 右键 → Add Keyboard Shortcut → 按下你想要的快捷键 → 确认。

推荐自定义

操作 默认快捷键 建议改成 原因
代码补全 Ctrl + Space Alt + / 和输入法冲突
格式化 Ctrl + Alt + L 和默认一致 习惯了就行

导入Eclipse快捷键

如果你之前用Eclipse:

File → Settings → Keymap → 右上角下拉选Eclipse

这样所有快捷键变成Eclipse风格。


四、Postfix Completion(后缀补全)

在表达式后面输入.加关键字,自动生成代码:

输入 生成代码
xxx.sout System.out.println(xxx)
xxx.var Type name = xxx
xxx.if if (xxx)
xxx.while while (xxx)
xxx.for for (Type item : xxx)
xxx.fori for (int i = 0; i < xxx.size(); i++)
xxx.not !xxx
xxx.null if (xxx == null)
xxx.notnull if (xxx != null)
xxx.return return xxx
xxx.cast () xxx

示例:

Java
List<User> users = userService.list();
// 输入 users.var → 自动变成
List<User> users = userService.list();
// 已经是变量了,输入 users.for → 自动变成
for (User user : users) {
    
}
// 在user上输入 user.sout → 自动变成
System.out.println(user);

五、常用Live Template

输入缩写按Tab自动展开:

缩写 生成
psvm public static void main(String[] args)
sout System.out.println()
soutm System.out.println("方法名")
soutv System.out.println("变量 = " + 变量)
fori for (int i = 0; i < ; i++)
iter for (Object item : list)
ifn if (xxx == null)
inn if (xxx != null)
prsf private static final
psf public static final
thr throw new

六、效率提升技巧

1. 多光标编辑

按住Alt不放,鼠标点击多个位置 → 可以同时编辑多行。

或选中一段文字 → Ctrl + G → 选中下一个相同文字 → 多处同时编辑。

2. 列编辑模式

按住Alt + Shift,鼠标左键拖动 → 列编辑模式,可以同时编辑一列。

或按住鼠标中键拖动。

3. 快速打开文件

Ctrl + Shift + N → 输入文件名(支持缩写)→ 快速打开文件。

比如输入usc能找到UserController.java。

4. 书签功能

在代码行号旁边点一下(或F11)添加书签。

Ctrl + F11给书签加数字标记。

Ctrl + 数字快速跳到对应书签。

适合在多个文件间频繁跳转的场景。

5. 收藏功能

Alt + 2打开收藏面板。

可以把常用的文件、类、方法收藏起来,快速访问。

6. 比较文件差异

选中两个文件 → 右键 → Compare Files

或选中文件 → Ctrl + D和剪贴板内容比较。


七、Mac快捷键对照

Mac的快捷键把Ctrl换成Command(⌘),Alt换成Option(⌥):

Windows Mac 功能
Ctrl + N ⌘ + O 搜索类
Ctrl + Shift + F ⌘ + Shift + F 全局搜索
Alt + Enter ⌥ + Enter 万能修复
Ctrl + Alt + L ⌘ + ⌥ + L 格式化
Ctrl + D ⌘ + D 复制行
Ctrl + Y ⌘ + Delete 删除行
Shift + F6 Shift + F6 重命名
Alt + Insert ⌘ + N 生成代码
Ctrl + B ⌘ + B 跳转定义
Alt + F7 ⌥ + F7 查看引用

小结

如果只记10个快捷键,记这些:

快捷键 功能 使用频率
双击Shift 万能搜索 ⭐⭐⭐⭐⭐
Alt + Enter 万能修复 ⭐⭐⭐⭐⭐
Ctrl + Alt + L 格式化 ⭐⭐⭐⭐⭐
Ctrl + D 复制行 ⭐⭐⭐⭐⭐
Ctrl + B 跳转定义 ⭐⭐⭐⭐
Alt + F7 查看引用 ⭐⭐⭐⭐
Shift + F6 重命名 ⭐⭐⭐⭐
Alt + Insert 生成代码 ⭐⭐⭐
Ctrl + Alt + T 包裹代码 ⭐⭐⭐
F8 单步调试 ⭐⭐⭐

装个Key Promoter X插件,每次用鼠标操作时会提示快捷键,一周就能记住大部分。