目录

问题现象:

问题分析:

温馨提示:

1、IDEA的代码样式配置

        1.1、Use tab character - Smart tabs 配置:

        1.2、Tab Size 配置:

        1.3、Indent 配置:

        1.4、Continuation Indent 配置

        1.5、应用并保存

2、代码格式化快捷键配置

        2.1、应用并保存:

        2.2、快捷键的使用:

解决方法:

1、IDEA的代码样式配置

2、代码格式化快捷键配置


问题现象:

        今天在项目中发现:我和其他同事格式化代码后的代码样式好像不太一样!然后就引出了本文主题:

        如何修改IDEA的代码样式配置+代码格式化快捷键配置?


问题分析:

温馨提示:

        不想看问题分析的,可以直接跳到解决方法中去看结论即可。

1、IDEA的代码样式配置

        首先,简单地解释一下本文提到的“代码样式”是什么意思?

        代码样式(Code Style)指的是:在IDEA中对某些代码使用代码格式化之后的代码书写风格。简单举个例子:

        这是我格式化之后的Java代码(图一):

        这是我同事格式化之后的Java代码(图二):

        可以发现,区别在于:

        在括号的前后是否分别存在1个空格。在图一中不管是左括号还是右括号,它们的前后都会存在1个空格;而在图二中,左括号的右边与右括号的左边,都不存在空格,是直接和括号内的代码紧挨在一起的。

        IDEA的代码样式配置路径是:

        Settings - Editor - Code Style

         可以看到该菜单下列举了很多代码语言,这里就以Java语言为例来分析一下:

        左边红框的Scheme选项中可以选择存在的所有配置项,右边的齿轮下拉列表中,有好几个选项,主要用于配置项的拷贝、创建、重置、导出导入功能,这些一般用不到,因为基本都是使用默认的代码样式,我相信几乎没有人会去频繁改动这个配置项。

        上面的红框中列举了很多代码样式的配置项,这里我就不一一细述了,有兴趣的小伙伴请自行探索,不过一般是不建议和IDEA的默认代码样式有太大区别(甚至最好是不要去修改它),否则容易和其他开发同事的代码样式存在较大差异,影响代码整体样式的观感。

        这里简单说一下:

        1.1、Use tab character - Smart tabs 配置:

        用于智能化地使用制表符,影响的是:需要用到空格符和制表符的地方。比如上面我举的简单例子的图一所示代码中,左右括号前后都会自动加入1个空格:

        其实就是因为我没有用IDEA自带的Default(默认)代码样式,而是自己拷贝了一份,并勾选了 Smart tabs 这个选项导致的:

        所以现在只要去掉了该选项;然后再次格式化代码,则会是图二所示代码的效果了:

        1.2、Tab Size 配置:

        用于指定1个制表符(Tab建)表示的空格符数,默认是1个制表符=4个空格符。

        1.3、Indent 配置:

        用于指定子代码块开头缩进时的需要用到的空格符数,默认是1个开头缩进=4个空格符。开头缩进一般是存在子代码的时候会用到。

        举个例子:

        比如class文件中第一行代码是顶格书写(用于描述该类),然后开始书写该class文件中会用到的类变量和类方法,由于存在父子关系(类中包含类变量和类方法),所以就相当于是第一行代码的子代码,此时为了代码美观,我们需要用到开头缩进。其它例子还有类方法中的子代码、do循环中的子代码、try代码块、if条件等的子代码;当详见下图:

        绝大部分情况下,都是建议Tab Size 配置和Indent 配置的数值保持一样,这样有利于我们在开头缩进时,直接按下Tab键即可实现缩进,否则的话你可能需要使用代码格式化功能,才能看到开头缩进的效果和Tab键的区别。

        1.4、Continuation Indent 配置

        翻译可知,它的意思是连续缩进

        用于指定连续使用到缩进的时候,需要用到的空格数,这个没什么好分析的了,基本上就是设置为 Indent 配置 数值的2倍即可。

        1.5、应用并保存

        配置完成后,先点击右下角的Apply,在点击OK即可生效,顺序如图:

2、代码格式化快捷键配置

        代码格式化快捷键的路径是:

        Settings - Keymap - Main Menu - Code - Reformat Code

        由于IDEA中可以设置快捷键的功能非常多,因此我建议你们直接在搜索框中键入“format”来查询结果,以便快速定位。


        双击 Reformat Code 行,就会弹出Edit Shortcuts(编辑快捷键)小窗口,用于添加键盘快捷键、添加鼠标快捷键(没用过也不建议使用)、添加缩写(没用过也不建议使用)、水平线下面则可以删除已存在的快捷键,基本上我们只会用到删除已存在的快捷键、和添加键盘快捷键这两个功能,如图:

         下图右边红框中的下拉列表,可对左边红框中指定的配置项进行拷贝、重命名、重置、删除操作,一般不会用到:

        2.1、应用并保存:

        配置完成后,先点击右下角的Apply,在点击OK即可生效,顺序如图:

        2.2、快捷键的使用:

        可以用鼠标框中需要格式化的代码,然后按下快捷键,效果如下:

        格式化前:

        格式化后:

        如果不用鼠标框中任何代码,则会格式化当前文件的所有代码,效果如下:

        格式化前:

        格式化后:


解决方法:

1、IDEA的代码样式配置

       依次点击 File - Settings - Editor - Code Style - Java - 下拉列表 - Default(默认) - Apply - OK 即可完成代码样式配置,如图:

2、代码格式化快捷键配置

        依次点击 Settings - Keymap - Main Menu - Code - Reformat Code - AddKeyboard Shortcut - 按下快捷键 - OK - Apply - OK 即可完成代码样式配置,如图:

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐