重新格式化代码
最后修改时间:2023 年 9 月 8 日IntelliJ IDEA 允许您根据当前代码样式方案或  .editorconfig文件中指定的要求重新格式化代码。如果 中未定义任何内容.editorconfig,则将从项目设置中获取。
您可以重新格式化部分代码、整个文件、文件组、目录和模块。您还可以从重新格式化中排除部分代码或某些文件。
重新格式化代码片段
- 在编辑器中,选择要重新格式化的代码片段。 - 在重新格式化之前,您可以查看应用于所选代码的代码样式设置:按并单击调整代码样式设置。AltEnter 
- 转到代码| 重新格式化代码或按。CtrlAlt0L - 笔记- 如果您不选择代码片段,IntelliJ IDEA 将重新格式化整个文件。 
重新格式化文件
- 在编辑器中打开文件,然后按或 在“项目”工具窗口中,右键单击该文件并选择“重新格式化代码”。CtrlAltShift0L - 笔记- 按住并选择其他文件以进行组重新格式化。Shift 
- 在打开的“重新格式化文件”对话框中,如果需要,请选择以下重新格式化选项: - 优化导入:如果您想要删除未使用的导入、添加缺失的导入或组织导入语句,请选择此选项。 - 有关更多信息,请参阅优化导入部分。 
- 重新排列条目:如果您需要根据代码 样式设置中指定的排列规则重新排列代码,请选择此选项。 
- 代码清理:选择此选项可运行代码清理检查。 
- 不保留换行符:根据代码样式设置重新格式化换行符。此选项会覆盖重新格式化时保留 | 换行符设置。 
 
- 单击运行。  - 如果您想查看重新格式化期间对代码所做的确切更改,请使用本地历史记录功能。 
重新格式化模块或目录
重新格式化行缩进
您可以根据指定的设置重新格式化行缩进。
- 在编辑器中,选择必要的代码片段并按。CtrlAlt0I 
- 如果您需要调整缩进设置,请在“设置”对话框 ( ) 中,转至编辑器|缩进设置。代码风格。CtrlAlt0S 
- 在相应语言页面的制表符和缩进选项卡上,指定适当的缩进选项,然后单击确定。 
笔记
在某些情况下,选项“检测并使用现有文件缩进进行编辑”位于“文件”| “缩进检测”部分中。设置 | 编辑| 代码样式可以覆盖您的设置。在这种情况下,IntelliJ IDEA 将显示一条通知。
保存时自动重新格式化代码
您可以将 IDE 配置为在保存更改后自动重新格式化已修改文件中的代码。
- 按打开 IDE 设置,然后选择“工具”|“IDE”。保存操作。CtrlAlt0S 
- 启用重新格式化代码选项。 
- 此外,您还可以配置 IDE 重新格式化代码的方式: - 单击“配置范围”以指定要从重新格式化中排除的文件名和目录模式。 
- 从“所有文件类型”列表中,选择要重新格式化代码的文件类型。 
- 如果您的项目受版本控制,请选择“整个文件”或“更改的行” 。 - 如果您选择Changedlines,则重新格式化将仅适用于已在本地更改但尚未签入存储库的代码行。 
 
从重新格式化中排除文件
您可以从重新格式化、代码排列和导入优化中排除一组文件和目录。
- 在“设置”对话框 ( ) 中,转到编辑器 | 代码风格。CtrlAlt0S 
- 切换到“格式化程序”选项卡,然后在“不格式化”字段中,输入要使用glob 模式排除的文件和目录。 - 您可以指定多个用分号分隔的全局模式 - ;。如果单击- ,该字段将展开,并且每个模式将显示在单独的行上。 
- 单击“应用”保存更改并关闭对话框。  
排除代码片段在编辑器中重新格式化
- 在“设置”对话框 ( ) 中,转到编辑器 | 代码风格。CtrlAlt0S 
- 切换到“格式化程序”选项卡并启用“在代码注释中使用标记打开/关闭格式化程序”选项。 
- 在编辑器中,在要排除的区域的开头,创建行注释并输入。在该区域的末尾,创建另一行注释并输入。Ctrl0/ - @formatter:off- @formatter:on- 标记之间的代码不会被重新格式化。  
保留现有格式
您可以选择格式化规则,重新格式化代码时将忽略这些规则。例如,您可以调整 IDE 以将简单的方法和函数保留在一行中,而通常在代码重新格式化后它们会扩展为多行。
- 转到设置 | 编辑| 代码样式,选择您的编程语言,然后打开“换行和大括号”选项卡。 
- 在“重新格式化时保留”部分中,选择要忽略的格式规则并取消选择应应用的规则。 
- 重新格式化您的代码( )。CtrlAlt0L 
IntelliJ IDEA 将根据当前样式设置重新格式化您的代码,并保留您选择的规则的现有格式。
格式化程序设置
要访问设置,请在“设置”对话框 ( ) 中,转至编辑器 | 代码样式,然后切换到“格式化程序”选项卡。CtrlAlt0S
| 物品 | 描述 | 
|---|---|
| 不要格式化 | 在此字段中,指定一个glob 模式,其中包含要从重新格式化、代码排列和导入优化中排除的文件和目录的名称,例如: 您可以指定多个用分号分隔的全局模式 | 
| 使用代码注释中的标记打开/关闭格式化程序 | 
 | 
| 离开: | 在此字段中,指定字符串,该字符串将指示要从重新格式化中排除的代码片段的开头。输入介词中带有符号的字符串 | 
| 在: | 在此字段中,指定字符串,该字符串将指示要从重新格式化中排除的代码片段的结尾。输入介词中带有符号的字符串 | 
| 在格式化程序标记中启用正则表达式 | 选中此复选框可使用正则表达式,而不是显式指定格式标记。IntelliJ IDEA 使用指定的正则表达式而不是确切的字符串来匹配格式化程序开/关标记。 例如,使用正则表达式允许您使用多个标记来启用和禁用格式化程序。在这种情况下,您可以使用以下正则表达式: 请参阅使用格式标记进行演示的示例。  | 
感谢您的反馈意见!
