1.常用快捷键
1.1 查找替换搜索
| 查找替换搜索 | 介绍 |
|---|---|
| Ctrl + F | 当前文件中文本查找 |
| Ctrl + R | 当前文件中文本替换 |
| Ctrl + shift + F | 根据输入内容查找整个项目 或 指定目录内文件 |
| Ctrl + shift + R | 根据输入内容替换对应内容,范围为整个项目 或 指定目录内文件 |
| shift + shift | 快速搜索 |
1.2 代码编写
| 代码编写 | 介绍 |
|---|---|
| Ctrl + W | 递进式选择代码块。可选中光标所在的单词或段落,连续按会在原有选中的基础上再扩展选中范围 |
| Ctrl + D | 复制光标所在行 或 复制选择内容,并把复制内容插入光标位置下面 |
| Ctrl + / | 注释光标所在行代码,会根据当前不同文件类型使用不同的注释符号 |
| Ctrl + shift + enter | 代码自动补全,自动结束代码,行末自动添加分号,或者在输入if等语法后自动添加花括号 |
| Alt + Enter IntelliJ IDEA | 根据光标所在问题,提供快速修复选择,光标放在的位置不同提示的结果也不同 ,例如根据当前行代码创建还未定义的函数 |
| Alt + Shift + 鼠标点击 | 多行光标 |
| shift + enter | 行中回车,开辟下一行 |
| Ctrl + Alt + L | 格式化代码,可以对当前文件和整个包目录使用 |
| Ctrl + Alt + O | 优化导入的类,可以对当前文件和整个包目录使用 |
| Ctrl + Alt + 左方向键 | 退回到上一个操作的地方 |
| Ctrl + Alt + 右方向键 | 前进到上一个操作的地方 |
| Ctrl + Shift + J | 自动将下一行合并到当前行末尾 |
| Ctrl + Shift + Z | 取消撤销 |
| Ctrl + Shift + W | 递进式取消选择代码块。可选中光标所在的单词或段落,连续按会在原有选中的基础上再扩展取消选中范围 |
| Ctrl + Shift + N | 通过文件名定位 / 打开文件 / 目录,打开目录需要在输入的内容后面多加一个正斜杠 |
| Ctrl + Shift + U | 对选中的代码进行大 / 小写轮流转换 |
| Ctrl + Shift + P | 代码智能提示 |
| Ctrl + P | 方法参数提示显示 |
| Ctrl + Shift + / | 代码块注释 |
| F2 | 跳转到下一个高亮错误 或 警告位置 |
| F11 | 添加书签 |
| Ctrl + shift + L | 格式化代码 |
| shift + F6 | 快速修改方法签名 |
| ESC | 从工具窗口进入代码文件窗口 |
| Home | 快速移动光标到行首 |
| End | 快速移动光标到行尾 |
| Alt + Shift + 前方向键 | 移动光标所在行向上移动 |
| Alt + Shift + 后方向键 | 移动光标所在行向下移动 |
| Shift + Tab | 取消缩进 |
| Ctrl + alt + 左右 | 跳转历史光标所在处 |
| alt + 左右 | 切换子tab |
| Ctrl + Y | 删除整行 |
| Ctrl + B | 进入光标所在的方法/变量的接口或是定义出,等效于 Ctrl + 左键单击 |
| Ctrl + Z、Ctrl + shift + Z | 撤销与取消撤销 |
| alt + insert | 代码自动生成,如对象的set / get方法,构造函数,toString()等 |
| Ctrl + alt + T | 代码包裹功能,快速将选中的代码块包裹到选择的语句块中(if,while等) |
1.3 调试
| 调试 | 介绍 |
|---|---|
| Shift + F10 | 等效于点击工具栏的 Run 按钮,程序为上次运行的程序 |
| Ctrl + Shift + F10 | 在当前程序,Run 按钮 |
| Shift + F7 | 在 Debug 模式下,智能步入。断点所在行上有多个方法调用,会弹出进入哪个方法 |
| Shift + F8 | 在 Debug 模式下,跳出,表现出来的效果跟 F9 一样 |
| Shift + F9 | 等效于点击工具栏的 Debug 按钮 |
| F7 | 在 Debug 模式下,进入下一步,如果当前行断点是一个方法,则进入当前方法体内,如果该方法体还有方法,则不会进入该内嵌的方法中 |
| F8 | 在 Debug 模式下,进入下一步,如果当前行断点是一个方法,则不进入当前方法体内 |
| F9 | 在 Debug 模式下,恢复程序运行,但是如果该断点下面代码还有断点则停在下一个断点上 |
| F12 | 回到前一个工具窗口,比如跳转到run界面 |
| ESC | 从工具窗口进入代码文件窗口 |
1.4 其他
| 其他 | 介绍 |
|---|---|
| Ctrl + D | show Diff |
| Alt + 7 | 显示structure窗口,方便查看类中的方法结构(推荐) |
2.实用技巧
2.1 实时代码模板
| 输入 | 显示 |
|---|---|
| private static Logger logger = LoggerFactory.getLogger($CLASS_NAME$.class); |
2.2 inject language
如果你使用IDEA在编写JSON字符串的时候,然后要一个一个\去转义双引号的话,就实在太不应该了,又烦又容易出错。在IDEA可以使用Inject language帮我们自动转义双引号。

先将焦点定位到双引号里面,使用alt+enter快捷键弹出inject language视图,并选中 Inject language or reference。

选择后,切记,要直接按下enter回车键,才能弹出inject language列表。在列表中选择 json组件。

选择完后。鼠标焦点自动会定位在双引号里面,这个时候你再次使用alt+enter就可以看到

选中Edit JSON Fragment并回车,就可以看到编辑JSON文件的视图了。

可以看到IDEA确实帮我们自动转义双引号了。如果要退出编辑JSON信息的视图,只需要使用ctrl+F4快捷键即可。
2.3 批量修改
使用ctrl+w选中rabbitTemplate这个文本,然后依次使用5次alt+j快捷键,逐个选中,这样五个文本就都被选中并且高亮起来了,这个时候就可以直接批量修改了。


2.4 symbol,模糊查找,只记得某几个字母
如果你依稀记得某个方法名字几个字母,想在IDEA里面找出来,可以怎么做呢?
直接使用ctrl+shift+alt+n,使用symbol来查找即可。
比如说:

你想找到checkUser方法。直接输入user即可。

如果你记得某个业务类里面有某个方法,那也可以使用首字母找到类,然后加个.,再输入方法名字也是可以的。

2.5 自动生成not null判断语句
当我们使用rabbitTemplate. 后,直接输入notnull并回车,IDEA就好自动生成if判断了。


2.6 代码调试
视图模式:
- Presentation Mode - 演示模式,专门用于Code Review这种需要展示代码的场景。使用方法alt + V弹出View,然后选择Enter Presentation Mode,之后,可以在view中选择Exit Presentation Mode。但是完全没必要退出,因为当你对IDEA足够熟悉的时候,可以在演示试图中做任何事情。
在演示模式中,可以使用快捷键进行操作,更加方便。
| 快捷键 | 说明 |
|---|---|
| Ctrl + E | 弹出最近使用的文件 |
| Ctrl + N | 定位文件 |
| Ctrl + shift + N | 定位文件 |
- Distraction Free Mode - 禅模式
- 条件断点
- 强制返回
- 在打断点的方法栈处,强制返回你想要的方法返回值给调用方。
- 模拟异常
IDEA 可以在打断点的方法栈处,强制抛出异常给调用方。这个在调试源码的时候非常有用。 - Evaluate Expression:IDEA 还可以在调试代码的时候,动态修改当前方法栈中变量的值,方便我们的调试。