
在 Java 开发领域,IntelliJ IDEA(简称 IDEA)凭借强大的功能和流畅的体验,成为了绝大多数开发者的首选 IDE。但很多人在使用时,仍依赖鼠标频繁操作,导致编码效率大打折扣。其实,掌握几个核心快捷键,就能减少 “手离开键盘” 的次数,让开发节奏显著加快。今天就为大家整理 10 个必学的 IDEA 快捷键,从查找定位到代码生成,覆盖日常开发 80% 的场景,学会就能让效率提升 50%!
一、快速查找类:Ctrl + N(Mac:Cmd + N)
快捷键组合
Windows/Linux:Ctrl + N;Mac:Cmd + N
功能说明
快速搜索并打开项目中的 Java 类(如 Service、Controller、Entity 等),支持模糊匹配,无需逐层展开包结构。
使用场景
当项目包层级复杂(比如超过 5 层),想快速打开某个类时,无需鼠标点击左侧 “Project” 面板查找,直接用该快捷键定位。
实操示例
比如想打开UserController类,按下Ctrl + N后,输入 “UserCtrl”(模糊匹配),下拉列表中会立即显示UserController,回车即可打开。
二、快速查找文件:Ctrl + Shift + N(Mac:Cmd + Shift + N)
快捷键组合
Windows/Linux:Ctrl + Shift + N;Mac:Cmd + Shift + N
功能说明
与 “查找类” 类似,但支持所有类型文件(如.xml 配置文件、.yml 配置、.js 前端文件、.sql 脚本等),同样支持模糊匹配。
使用场景
需要修改配置文件(如application.yml)或打开非 Java 文件时,避免在海量文件中手动筛选。
实操示例
想打开mybatis-config.xml,按下Ctrl + Shift + N,输入 “mybatis”,即可快速定位到该配置文件,无需在 “resources” 目录下逐层查找。
三、自动补全代码:Ctrl + Space(空格)
快捷键组合
Windows/Linux/Mac:Ctrl + Space(部分系统需关闭输入法 “候选词触发”,避免冲突)
功能说明
IDEA 的智能代码补全,能根据上下文提示变量名、方法名、类名等,甚至能补全循环、判断语句的结构。
使用场景
编写代码时减少手动输入,比如输入 “for” 后按Ctrl + Space,会提示 “for 循环”“增强 for 循环” 等选项,选择后自动生成循环结构。
实操示例
定义List<User> userList = new ArrayList<>();后,输入 “userL” 按Ctrl + Space,会自动补全 “userList”;输入 “userList.foreach” 按Ctrl + Space,会自动生成userList.forEach(user -> {});。
四、重构:重命名变量 / 方法 / 类:Shift + F6
快捷键组合
Windows/Linux/Mac:Shift + F6
功能说明
批量重命名变量、方法、类名或包名,且会自动修改所有引用该名称的地方(包括其他类、配置文件中的引用),避免手动修改遗漏。
使用场景
需要修改变量名(如将 “u” 改为 “user”)或方法名(如将 “getU” 改为 “getUser”)时,确保全局引用同步更新。
实操示例
有一个变量String u = "张三";,且在 10 个地方引用了 “u”。选中 “u” 后按Shift + F6,输入新名称 “user”,点击 “Refactor”,所有引用 “u” 的地方会自动改为 “user”,无需逐个修改。
五、格式化代码:Ctrl + Alt + L(Mac:Cmd + Alt + L)
快捷键组合
Windows/Linux:Ctrl + Alt + L;Mac:Cmd + Alt + L
功能说明
按照项目代码规范(如缩进、空格、换行、括号位置)自动整理代码格式,让代码结构整齐统一,无需手动调整缩进。
使用场景
编写完一段代码后(如一个方法),或粘贴外部代码后,快速统一格式,避免因格式混乱影响可读性。
实操示例
粘贴一段缩进混乱的代码:
public void addUser(User user){
if(user != null){
userMapper.insert(user);
}
}
按下Ctrl + Alt + L后,自动格式化为:
public void IntTest (User user){
if (user != null) {
userMapper.insert(user);
}
}
六、快速注释代码:Ctrl + /(单行)、Ctrl + Shift + /(多行)
快捷键组合
- 单行注释:Windows/Linux/Mac:Ctrl + /
- 多行注释:Windows/Linux:Ctrl + Shift + /;Mac:Cmd + Shift + /
功能说明
- 单行注释:在光标所在行前添加//,再次按下取消注释;
- 多行注释:选中多行代码后,添加/* */包裹,再次按下取消注释。
使用场景
调试代码时临时注释某行 / 某段代码,或为关键代码添加说明(推荐用多行注释写注释文档)。
实操示例
- 单行注释:选中userMapper.insert(user);,按Ctrl + /,变为// userMapper.insert(user);;
- 多行注释:选中整个IntTest 方法,按Ctrl + Shift + /,变为:
/*public void IntTest (User user){
if (user != null) {
userMapper.insert(user);
}
}*/
七、跳转指定行号:Ctrl + G(Mac:Cmd + G)
快捷键组合
Windows/Linux:Ctrl + G;Mac:Cmd + G
功能说明
输入行号后,直接跳转到当前文件的指定行,避免滚动鼠标查找。
使用场景
调试时根据日志中的 “行号提示”(如 “Error at line 123”)快速定位错误位置,或需要修改某行已知行号的代码。
实操示例
日志提示 “NullPointerException at com.example.demo.UserService.getUserById (UserService.java:45)”,打开UserService.java后,按Ctrl + G,输入 “45”,回车即可跳转到第 45 行。
八、查看方法调用链:Ctrl + Alt + H(Mac:Cmd + Alt + H)
快捷键组合
Windows/Linux:Ctrl + Alt + H;Mac:Cmd + Alt + H
功能说明
查看当前方法被哪些地方调用(调用者),以及调用层级,清晰梳理代码逻辑依赖。
使用场景
接手老项目时,想了解某个核心方法(如getUserInfo)的调用路径,或排查 “谁调用了这个方法导致异常”。
实操示例
在UserService的getUserInfo方法上,按下Ctrl + Alt + H,会弹出一个窗口,显示所有调用getUserInfo的方法(如UserController的getUser方法、OrderService的checkUser方法),点击可直接跳转到调用处。
九、快速生成代码:Alt + Insert(Mac:Cmd + N)
快捷键组合
Windows/Linux:Alt + Insert;Mac:Cmd + N
功能说明
快速生成常用代码片段,如构造方法、getter/setter、toString ()、equals ()、接口实现方法等。
使用场景
创建实体类(Entity)时,避免手动编写 getter/setter;实现接口时,快速生成未实现的方法。
实操示例
定义Student实体类:
public class Student {
private String name;
private int score;
}
按下Alt + Insert,选择 “Getter and Setter”,勾选所有字段,点击 “OK”,自动生成所有字段的 getter/setter 方法;选择 “Constructor”,可生成无参或带参数的构造方法。
示例如下:
public class Student {
private String name;
private int score;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getScore() {
return score;
}
public void setScore(int score) {
this.score = score;
}
public Student(String name, int score) {
this.name = name;
this.score = score;
}
}
十、关闭当前标签页:Ctrl + F4(Mac:Cmd + W)
快捷键组合
Windows/Linux:Ctrl + F4;Mac:Cmd + W
功能说明
关闭当前打开的文件标签页,无需点击标签页右上角的 “×”,尤其适合同时打开多个文件时快速清理界面。
使用场景
打开多个文件(如同时查看UserController、UserService、UserEntity)后,完成某个文件的编辑,快速关闭以保持界面简洁。
实操示例
当前打开了 4个标签页,编辑完Student.java后,按Ctrl + F4关闭该标签页,专注于剩余3个文件的开发。

下图是使用快捷键键关闭Student.java的截图;

总结:快捷键的核心价值 ——“肌肉记忆”
以上 10 个快捷键覆盖了 “查找定位”“代码生成”“格式整理”“重构调试” 四大核心场景,也是我日常开发中使用频率最高的组合。但快捷键的关键不是 “记住”,而是 “用熟”—— 建议每天刻意用 1-2 个快捷键替代鼠标操作,1 周后就能形成肌肉记忆,彻底摆脱 “鼠标依赖”。
比如我现在打开类时,手会下意识按Ctrl + N,而不是去点左侧面板;写完实体类,手指会自然按Alt + Insert生成 getter/setter。这种 “无需思考的操作”,才是提升效率的关键。
如果大家还有其他常用的 IDEA 快捷键,欢迎在评论区补充,一起打造更高效的开发流程!
27万+

被折叠的 条评论
为什么被折叠?



