1. 快捷键
1.1. 按键说明
按键说明
+需要同时按下加号左右两侧的键,按下逗号左侧的键后,松开,然后按下逗号右侧的键Ctrl控制键,键盘上标记了Ctrl的键,在Mac键盘上标记为controlShift上档键,键盘上标记了Shift的键Alt切换键,键盘上标记了Alt的键,在Mac键盘上与Option是同一个键Command命令键,Mac键盘独有,标记了Command的键Enter回车键,键盘上标记了Enter的键,在Mac键盘上与return是同一个键Space空格键,键盘上最下方、最大的按键Up / Down方向上/方向下,通常在键盘上标记了向上/向下的箭头
某些快捷键可能与操作系统或其它软件的全局快捷键是冲突的,则按下会无效或执行其它命令,可以在Intellij IDEA的设置的Keymap中修改为其它按键。
以下快捷键是Intellij IDEA的默认风格快捷键,如果改成了Eclipse风格或其它风格,请参考所更改的设置。
标记了[!]是可能存在冲突的快捷键。
全部快捷键可在Intellij IDEA的设置的Keymap中查看,或者查看官方文档:https://resources.jetbrains.com/storage/products/intellij-idea/docs/IntelliJIDEA_ReferenceCard.pdf?_ga=2.5349558.422550521.1580708138-1891300040.1568641704
在各种编辑软件中都会使用到的快捷键可能不会被列举到以下各表中,例如Ctrl + C表示复制,在各种编辑软件中都是这样设计的,就不重复列举了。
1.2. 推荐快捷键
Windows / LinuxMac OS说明
[!] Ctrl + SpaceCtrl + Space基本代码提示Ctrl + Shift + SpaceCtrl + Shift + Space智能代码提示Shift, ShiftShift, Shift全局查找Alt + EnterOption + Enter代码错误解决方案Alt + InsertCommand + N 或 Ctrl + Enter自动生成Bean方法Ctrl + PCommand + P在调用方法时,将光标定位在方法的括号中,提示方法的参数列表Shift + F6Shift + F6重命名,适用于:在文件列表中对文件重命名,在文件内部对类名、属性名、方法名等重命名
1.3. 常规
Windows / LinuxMac OS说明
Ctrl + Shift + ACommand + Shift + A查找命令(IDE中可执行的命令,例如运行、调试、重命名等)
1.4. 查找与替换
Windows / LinuxMac OS说明
Shift, ShiftShift, Shift全局查找Ctrl + FCommand + F在当前源代码中查找Ctrl + RCommand + R在当前源代码中替换Ctrl + Shift + FCommand + Shift + F在指定路径(例如整个项目)中查找Ctrl + Shift + RCommand + Shift + R在指定路径(例如整个项目)中替换
1.5. 代码编辑
Windows / LinuxMac OS说明
[!] Ctrl + SpaceCtrl + Space基本代码提示Ctrl + Shift + SpaceCtrl + Shift + Space智能代码提示Ctrl + PCommand + P在调用方法时,将光标定位在方法的括号中,提示方法的参数列表Alt + InsertCommand + N 或 Ctrl + Enter自动生成Bean方法Ctrl + OCtrl + O重写方法Ctrl + Alt + TCommand + Option + T使用if/try…catch等代码块包裹当前选中代码Ctrl + /Command + /添加/移除行注释Ctrl + Alt + LCommand + Option + L格式化源代码Ctrl + Alt + O[!] Ctrl + Option + O整理import语句Ctrl + DCommand + D向下复制代码行Ctrl + YCommand + Delete删除代码行Shift + EnterShift + Enter新增下一行代码,并将光标定位到下一行代码Ctrl + EnterCommand + Enter新增下一行代码,光标在原有位置不变Ctrl + +/-Command + +/-展开或收起类的某个成员,例如方法、内部类等Ctrl + Shift + +/-Command + Shift + +/-展开或收起当前类的所有成员Option + Shift + 上/下向上/下移动代码Command + Option + V将光标所在位置的常量声明为局部变量Ctrl + Shift + VCommand + Shift + V从最近复制过的多项中选择某项来粘贴
也有很多开发者使用Ctrl + X作为删除代码行的快捷键,其本质是剪切了代码,当然,只要不粘贴,其效果也是相同的。
1.6. 管理与导航
WindowsMac OS说明
Shift + F6Shift + F6重命名,适用于:在文件列表中对文件重命名,在文件内部对类名、属性名、方法名等重命名Shift + 单击在选项卡处单击以关闭文件Ctrl + F12Command + F12显示当前文档结构Ctrl + UCommand + U打开父类方法,打开父类,需先装光标定位到类名,不适用于打开Object类F4 / Ctrl + EnterCommand + 下 / Ctrl + 单击打开光标所在位置的类、属性、方法的声明
2. 快捷输入
2.1. 操作方式
可以通过快捷输入简单的内容后按下Enter键,快速完成特定的代码内容,这些内容可以在设置的Editor > Live Templates中查看或调整。
2.2. 常规
输入内容等效代码
psvmpublic static void main(String[] args) {}soutSystem.out.println();serrSystem.err.println();soutmSystem.out.println("类名.方法名");soutpSystem.out.println("参数1 = [值1], 参数2 = [值2], ... , 参数N = [值N]");soutvSystem.out.println("参数名 = 值");
2.3. 声明静态常量
输入内容等效代码
psfpublic static finalprsfprivate static finalpsfipublic static final intpsfspublic static final String
2.4. 判断
输入内容等效代码
ifnif (变量 == null) {}innif (变量 != null) {}instif (变量 instanceof 类) {}
2.5. 循环与遍历
输入内容等效代码
forifor (int 循环变量 = 0; 循环变量 < ; i++) {}itarfor (int 循环变量 = 0; 循环变量 < 数组.length(); i++) { 类型 数组元素变量名 = 数组[i]}iterfor (元素类型 变量名 : 被遍历对象) {}itlifor (int 循环变量 = 0; 循环变量 < 集合.size(); i++) { 类型 集合元素变量名 = 集合.get(循环变量); }
3. 快捷输入–高级
3.1. 遍历数组或集合对象
假设存在名为numbers的int数组或集合,输入numbers.for即可生成增强for循环代码,格式如下:
for (int number
: numbers
) {
}
3.2. 为值声明变量
假设需要声明int类型的变量,其值为1,输入1.var即可生成对应的声明语句,格式如下:
int i
= 1;
整型数字默认生成的变量名是i,代码生成后,可以自行调整。
同理,假设需要声明String类型的变量,其值为"Java",输入"Java".var即可,格式如下:
String java
= "Java";
字符串类型默认生成的变量名有多种情况,例如字符串内容是简单字母时,默认变量名就是字母,如果字母首字母是大写的,也会自动使用首字母小写作为默认变量名,字符串类型是汉字时,默认变量名就是汉字,字符串中包含不允许组成变量名的字符时,会使用s或s1、s2等作为默认变量名,当然,在代码生成后,都可以自行调整。
其它数据类型的值也可以使用同样的方法声明出变量,例如输入new Date().var时,就可以生成:
Date date
= new Date();
3.3. 判断对象是否为空
假设存在名为x的变量,需要判断是否为空,输入x.null然后在提示菜单中选择null一栏回车,即可生成:
if (x
== null
) {
}
如果需要判断是否非空,则输入x.no后选择notnull一栏并回车,即可生成:
if (x
!= null
) {
}