IntelliJ IDEA使用技巧(macOS版)

虽然我在日常开发中使用的是IntelliJ IDEA,但是基本上只是使用了一些基本的功能,很多技巧都没有使用。趁着这次给新人分享IDEA的使用,我重新学习整理了IDEA的使用技巧。

IDEA的版本是IntelliJ IDEA Ultimate 2020.1.1

代码模板

文件代码模板

文件代码模板是新建文件时使用的模板,设置路径如下:Preferences -> Editor -> File and Code Template,也可以直接使用快捷键command + ,来打开Preferences

File_and_Code_Template
在这里定义了IDEA内置的文件代码模板,当新建一个文件时(比如Java class),就会按照这里的模板生成指定的代码文件。

另外,我们可以在Includes里设置文件头:

File_header
设置之后创建Java类时就会在文件头上自动加上作者、新建日期等信息:

File_header_example

实时代码模板

IDEA提供了强大的实时代码模板功能,并且内置了很多模板,比如输入sout就会快速生成System.out.println();

配置路径如下:Preferences -> Editor -> Live Templates

Live_Templates

介绍几个常用的代码模板:

  • ifn:生成参数为null的判断代码
  • inn:生成参数不为null的判断代码
  • psvm:生成main函数
  • sout:生成System.out.println();
  • souf:生成System.out.printf("");
  • serr:生成System.err.println();
  • prsf:生成private static final
  • psf:生成public static final
  • psfi:生成public static final int
  • psf:生成public static final
  • St:生成String
  • thr:生成throw new

自定义实时算法模板

除了这些内置的代码模板以外,我们还可以自己添加定制的代码模板。

Live Templates页面点击+,选择Template Group,创建代码模板组。然后点击+,选择Live Template,创建一个代码模板。

比如,我们可以创建两个代码模板:

  • prI:生成private Integer
  • prS:生成private String

my_template

Postfix Completion

Postfix Completion本质上也是一种代码模板,它可以更智能地补全代码。

它具体是做什么的,我们可以通过下面的GIF演示图来说明:

新建对象的实例:

new_command

为对象实例赋值:

var_command

可以看到Postfix Completion和实时代码模板非常像,它在我们代码片段的后面使用,可以减少鼠标的移动,从而加速我们的一些高频操作。

配置路径如下:Preferences -> Editor -> Postfix Completion

Postfix_Completion

IDEA内置了很多Postfix Completion,除了上面演示的newvar,还有下面一些比较常用的模板:

  • for:为可遍历对象生成foreach循环框架
  • fori:为一个数字生成循环框架
  • nnnotnull:为对象生成不为null判断的框架
  • null:为对象生成为null判断的框架
  • return:在对象前面添加return
  • sout:为对象包裹System.out.println()方法
  • try:为表达式生成try-catch框架

常用快捷键

快捷键图

ReferenceCardForMac

导出官方快捷键图片:

shift + command + a,输入key reference

代码查看

当前文件查找

command + f

全局查找

shift + command + f

当前文件替换

command + r

全局替换

shift + command + r

查找class

command + o

查找file

shift + command + o

查找symbol

option + command + o

查找action

shift + command + a

查找class+file+symbol+action

点击两次shift

跳转到下一个 高亮错误 / 警告位置

F2

跳转到上一个高亮错误 / 警告位置

Shift + F2

查看类继承关系图

option + command + u

展示类中变量和方法

command + F12

展开折叠代码

command + +/-

展开折叠所有代码

shift + command + +/-

代码跳转

查看最近文件

command + e

跳转历史光标所在处

option + command + 方向键

跳转到指定行

command + l

跳转到指定文件夹

点击两次shift,再输入/文件夹名

从方法使用处跳转到方法定义

command + 鼠标左键

command + B

从方法使用处跳转到方法的实现

option + command + 鼠标左键

option + command + B

代码编辑

变量大小写切换

shift + command + u

代码格式化

option + command + l

代码自动收尾

shift + command + enter

比如一行代码完成后输入shift + command + enter,会在这行代码末尾加上;,光标定位到末尾。

代码收尾不仅仅是添加;

complete_statement

这里IDEA会为if表达式自动加上大括号。

对选中的代码弹出环绕选项

option + command + t

surround-with

插入自定义动态代码模板

command + j

生成代码(构造函数、Getter/Setter方法、equals方法、hashCode方法、toString方法)

command + n

重构

重命名变量、文件、文件夹

shift + F6

快速提取常量

option + command + c

快速提取参数到方法

option + command + p

快速提取成员变量

option + command + f

快速提取变量

option + command + p

快速提取方法

option + command + m

https://juejin.im/post/5d47f4e851882534d152a206
https://atips.cn/idea/
http://blog.didispace.com/intellij-idea-some-features-sam-1/