IDEA——常用快捷键

引言

总结 IDEA 的常用快捷键,除了部分快捷键与 Eclipse 保持一致之外,枚举更多的实用快捷键。

一、如何设置快捷键

在 Settings -> Keymap 中,下拉框里选择 Eclipse ,即可将 IDEA 的快捷键设置为与 Eclipse 保持一致。但并不是所有的快捷键都与Eclipse 相同。

IDEA——常用快捷键

二、我的快捷键

以下列举出常用的快捷键,在选中了“Eclipse”后仍需要额外设置的,我会备注“额外设置”。

2.1 代码提示(额外设置):Alt + /

注意,代码提示并不完全就是代码补全,提示就提示,不要一上来就直接补全,你咋知道我是要补全 String 还是要补全 StringBuffer?!Eclipse 的代码提示快捷键是 Alt + / ,但是IDEA 并没有迁移过来,是因为 idea 中它是以代码循环补全的功能存在的,虽然最后肯定还是要补全,但是开发者要能够有对补全候选项的选择权。

这里多啰嗦两句,代码循环补全的意思是,如果需要补全代码,但是有多个候选项,那么 idea 会依次进行代码补全。

下面是代码提示的设置项:

IDEA——常用快捷键

先移除原来的 Ctrl + 空格,然后再 Add Keyboard Shortcut,输入 Alt + / 即可。

IDEA——常用快捷键

因为 Alt + / 已被占用,因此它会提示你是否移除其绑定,直接点击OK即可:

IDEA——常用快捷键

IDEA——常用快捷键

这样就可以主动呼出代码提示悬浮框了。适用于没有在第一时间弹出自动提示并补全代码的情况,可能由于切换窗口导致悬浮框退出,需要手动再次唤醒:

IDEA——常用快捷键

2.2 删除光标所在行:Ctrl + d

2.3 向下复制一行:Ctrl + Alt + ↓

2.4 直接换行:Shift + 回车

2.5 单行注释:Ctrl + /

可以选中多行后直接 Ctrl + / ,也可以实现注释多行的目的。再次点击则取消注释。

2.6 多行注释:Ctrl + Shift + /

2.7 移动光标所在行:Alt + ↑或↓

2.8 查看源码:Ctrl + 鼠标左键 或 Ctrl + Shift + t

2.9 万能解错/生成返回值:Alt + 回车

类似于 Eclipse 的 Ctrl + 1。该快捷键可以进行一定的信息提示、优化建议、提供解决方案等。

2.10 返回上一个编辑页面:Alt + 左箭头

针对 Alt + left,也有 Alt + right ,进入下一个编辑页。

2.11 查看所有调用者:Ctrl + Alt + h

选中方法名或其他变量信息,查看所有调用它的地方。

2.12 代码格式化(额外设置):Ctrl + Shift + L

idea 的快捷键设置为 eclipse 后,可能会出现 Ctrl + shift  + F 无法格式化代码的情况,需要将 Ctrl + Shift + F 删除,才能让 Ctrl + Shift + L生效。

IDEA——常用快捷键

2.13 提示形参类型(额外设置):Ctrl + Alt + /

IDEA——常用快捷键

IDEA——常用快捷键

2.14 查看类的结构:Ctrl + o

这个快捷键相当于 eclipse 中的 outline 视窗,在 idea 中也有对应的视窗 - Structure

IDEA——常用快捷键

2.15 重构变量或方法名:Alt + Shift + r

不需要选中,只需要光标停留在变量名的位置即可。

2.16 大小写转换:Ctrl + Shift + Y

2.17 生成 get、set 等方法(额外设置):Alt + Shift + S

IDEA——常用快捷键

2.18 页面下移或上移:Ctrl + ↑ 或 ↓

2.19 代码包围:Alt + shift + Z

IDEA——常用快捷键

可以快速将光标所在代码进行 try catch 包围,当然,也可以通过 Alt + 回车进行编译异常捕获。

2.20 全局查找:Ctrl + H

刚入职后的代码及业务梳理神器,因为不熟悉具体的类和调用关系,所有信息基本都需要全局查找。

2.21 查找文件:双击 Shift

2.22 查看类的继承结构:F4 或 Ctrl + Alt + U

Ctrl + Alt + U 是弹出显示,Ctrl + Shift + Alt + U 是新开标签页显示。可以查看当前类的UML类图:

IDEA——常用快捷键

2.23 打开最近修改过的文件:Ctrl + E

2.24 选择要粘贴的内容:Ctrl + Shift + V

如果连续复制了多个文本,可以使用Ctrl + Shift + V 来选择需要粘贴的文本。