idea怎麼格式化程式碼
idea格式化代码的方法:1、直接使用快捷键“Ctrl+Alt+L”格式化代码。2、打开打开idea,依次点击“File”-“Settings”-“Plugins”,搜索并安装“eclipse code formatter”;然后导入配置文件“eclipse-codestyle.xml”;最后使用快捷键“Ctrl+Shift+Alt+L”格式化代码。
本教程操作环境:windows10系统、IDEA2020.1.3、Dell G3电脑。
IDEA 全称 IntelliJ IDEA,是java编程语言的集成开发环境。IntelliJ在业界被公认为最好的Java开发工具,尤其在智能代码助手、代码自动提示、重构、JavaEE支持、各类版本工具(git、svn等)、JUnit、CVS整合、代码分析、 创新的GUI设计等方面的功能可以说是超常的。IDEA是JetBrains公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主。它的旗舰版还支持HTML,CSS,PHP,MySQL,Python等。免费版只支持Java,Kotlin等少数语言。
idea格式化代码的方法
方法1:原生方法
在IDEA中,可以使用Ctrl+Alt+L快捷键格式化代码。
使用Ctrl+Alt+L快捷键格式化代码,这时代码格式会变得很工整。
方法2:利用插件
是否遇到过使用快捷键“Ctrl+Alt+L”后代码几乎没变化,格式化后的结果没有达到预期效果,不妨试试配置代码格式化模板。
1、安装插件:EclipseCodeFormatter
阿里配置文件只是针对eclipse,所以导入配置文件之前需要先安装EclipseFormatter插件
打开idea编辑器:File->Settings->Plugins
,搜索 eclipse code formatter
。
我这是已经安装好的页面
2、导入配置文件 eclipse-codestyle.xml
上面步骤操作完页面不要关,找到下面的Other Settings->Adapter eclipse code formatter
路径,按照图片位置找到eclipse-codestyle.xml
文件保存的位置,添加进去就行了(文件放文章后面
)
只格式化自己写的代码,不格式化版本仓库里面的代码,防止代码评审或者代码对比出现大量不一致的代码
快捷键:Ctrl+Shift+Alt+L
- 在默认情况下,Scope 选项是 Whole file ,也就是格式化当前窗口的全部代码
- Only changes uncommitted to VCS表示只格式化我修改的,不格式化我未修改的代码
- 我们也可以设置在自动保存的时候触发代码格式化。 操作方法:File->Settings->Tools->Actions on Save 中进行设置。
注意在勾选完Reformat code 之后后面的 Whole file 这里要改为 Changed lines
eclipse-codestyle.xml
文件自取,记得一键三连哦0.0
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <profiles> <profile> <!--可变参数的... Idea没有对应的配置项,强制insert--> <setting></setting> <!--枚举值之间 Idea没有对应的配置项,强制insert--> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=Java:SPACE_BEFORE_COMMA--> <!--org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=Java:SPACE_BEFORE_COMMA 由于IDEA只有一个SPACE_BEFORE_COMMA选项,所以统一设置 insert_space_before_comma 为 do not insert --> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <!--insert_space_before_comma end--> <!--org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=Java:SPACE_AFTER_COMMA_IN_TYPE_ARGUMENTS--> <setting></setting> <!--IDEA只有一个配置项SPACE_AFTER_COMMA,insert_space_after_comma*统一设置成insert--> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <!--insert_space_after_comma end--> <!--org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=Java:SPACE_BEFORE_COLON--> <setting></setting> <setting></setting> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=Java:SPACE_AFTER_COLON--> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <!--IDEA不支持配置,默认do not insert--> <setting></setting> <setting></setting> <setting></setting> <!--这个在Eclipse也没有找到配置的地方--> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_space_before_semicolon=Java:SPACE_BEFORE_SEMICOLON 程序导入的时候强制将SPACE_BEFORE_SEMICOLON设置为false --> <setting></setting> <setting></setting> <setting></setting> <!--SPACE_AFTER_SEMICOLON=true--> <setting></setting> <setting></setting> <!--IDEA不支持配置,do not insert--> <setting></setting> <setting></setting> <setting></setting> <!--IDEA不支持,使用默认--> <setting></setting> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=Java:<Programmatic>--> <setting></setting> <setting></setting> <!--IDEA不支持配置,使用如下值,两者对应--> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <!--Java:SPACE_BEFORE_OPENING_ANGLE_BRACKET_IN_TYPE_PARAMETER--> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=Java:SPACE_AFTER_CLOSING_ANGLE_BRACKET_IN_TYPE_ARGUMENT--> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=Java:<Programmatic>--> <setting></setting> <!--IDEA使用了对应的配置:Java:SPACE_WITHIN_ARRAY_INITIALIZER_BRACES,但感觉不太好,IDEA默认不插入,Eclipse也使用不插入--> <setting></setting> <!--use default insert--> <setting></setting> <!--use default do not insert --> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <!--use default insert--> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=Java:SPACE_BEFORE_SWITCH_LBRACE--> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=Java:SPACE_BEFORE_CLASS_LBRACE--> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=Java:<Programmatic>--> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=Java:SPACE_BEFORE_ARRAY_INITIALIZER_LBRACE--> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=Java:SPACE_BEFORE_METHOD_LBRACE--> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=Java:SPACE_AFTER_QUEST--> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=Java:SPACE_BEFORE_QUEST--> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=Java:SPACE_BEFORE_ANOTATION_PARAMETER_LIST--> <setting></setting> <!--use default do not insert--> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <!--下面两个对应IDEA中的一个配置Java:SPACE_AROUND_ASSIGNMENT_OPERATORS,使用insert--> <setting></setting> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=Java:SPACE_BEFORE_CATCH_PARENTHESES--> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=Java:SPACE_BEFORE_METHOD_CALL_PARENTHESES--> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=Java:SPACE_BEFORE_TRY_PARENTHESES--> <setting></setting> <!--下面两个对应IDEA中的一个配置Java:SPACE_AROUND_UNARY_OPERATOR,使用do not insert--> <setting></setting> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=Java:SPACE_BEFORE_IF_PARENTHESES--> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=Java:SPACE_BEFORE_WHILE_PARENTHESES--> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=Java:SPACE_AFTER_TYPE_CAST--> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=Java:SPACE_BEFORE_METHOD_PARENTHESES--> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=Java:SPACE_BEFORE_FOR_PARENTHESES--> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=Java:SPACE_BEFORE_SYNCHRONIZED_PARENTHESES--> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=Java:SPACE_BEFORE_SWITCH_PARENTHESES--> <setting></setting> <!--下面两个对应IDEA中的一个配置Java:SPACE_AROUND_LAMBDA_ARROW,使用insert--> <setting></setting> <setting></setting> <!--SPACE_WITHIN_EMPTY_ARRAY_INITIALIZER_BRACES--> <setting></setting> <!--Idea -> Wrapping And Braces -> Simple classes in one line --> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <!--Idea -> Wrapping And Braces -> Simple method in one line --> <setting></setting> <!--因为Idea不支持配置,所以设置为 Idea默认值--> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <!--Idea可以通过Wrap Always实现 TODO--> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <!--Idea -> Wrapping And Braces -> Simple block in one line -> do not select --> <setting></setting> <!--Idea -> Wrapping And Braces -> try statement -> catch.... (Java:CATCH_ON_NEW_LINE)--> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=<Programmatic>--> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=Java:ARRAY_INITIALIZER_RBRACE_ON_NEXT_LINE--> <setting></setting> <!--#org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=Java:ARRAY_INITIALIZER_LBRACE_ON_NEXT_LINE--> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=Java:ELSE_ON_NEW_LINE--> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=Java:WHILE_ON_NEW_LINE--> <setting></setting> <!--org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=Java:FINALLY_ON_NEW_LINE--> <setting></setting> <!--comment start--> <setting></setting> <!--ENABLE_JAVADOC_FORMATTING--> <setting></setting> <!--org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=<Programmatic>--> <setting></setting> <!--IDEA无对应设置,所以关闭对block comment的格式化 --> <setting></setting> <setting></setting> <setting></setting> <!--org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=Java:KEEP_FIRST_COLUMN_COMMENT--> <setting></setting> <!--org.eclipse.jdt.core.formatter.use_on_off_tags=FORMATTER_TAGS_ENABLED--> <setting></setting> <!--org.eclipse.jdt.core.formatter.disabling_tag=FORMATTER_OFF_TAG--> <setting></setting> <!--org.eclipse.jdt.core.formatter.enabling_tag=FORMATTER_ON_TAG--> <setting></setting> <!--下面的没有IDEA对应项,在代码里面对IDEA中使用默认值即可,LINE_COMMENT_AT_FIRST_COLUMN BLOCK_COMMENT_AT_FIRST_COLUMN设置为false--> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <!--和IDEA保持一致,注释换行--> <setting></setting> <setting></setting> <!--comment end--> <!--org.eclipse.jdt.core.formatter.blank_lines_after_imports=Java:BLANK_LINES_AFTER_IMPORTS--> <setting></setting> <!--org.eclipse.jdt.core.formatter.blank_lines_before_imports=Java:BLANK_LINES_BEFORE_IMPORTS--> <setting></setting> <!--org.eclipse.jdt.core.formatter.blank_lines_after_package=Java:BLANK_LINES_AFTER_PACKAGE--> <setting></setting> <!--org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=Java:BLANK_LINES_AROUND_CLASS--> <setting></setting> <!--org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=Java:BLANK_LINES_BEFORE_METHOD_BODY--> <setting></setting> <!--org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=Java:<Programmatic>--> <setting></setting> <!--org.eclipse.jdt.core.formatter.blank_lines_before_field=Java:BLANK_LINES_AROUND_FIELD--> <setting></setting> <!--org.eclipse.jdt.core.formatter.blank_lines_before_method=Java:BLANK_LINES_AROUND_METHOD--> <setting></setting> <!--org.eclipse.jdt.core.formatter.blank_lines_before_package=Java:BLANK_LINES_BEFORE_PACKAGE--> <setting></setting> <!--下面IDEA没有对应设置,使用对应值即可--> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <!--org.eclipse.jdt.core.formatter.indentation.size=Java:IndentOptions:INDENT_SIZE--> <setting></setting> <!--org.eclipse.jdt.core.formatter.continuation_indentation=Java:IndentOptions:<Programmatic>--> <setting></setting> <!--org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=Java:<Programmatic>--> <setting></setting> <!--org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=Java:IndentOptions:SMART_TABS--> <setting></setting> <!--org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=Java:INDENT_CASE_FROM_SWITCH--> <setting></setting> <!--KEEP_INDENTS_ON_EMPTY_LINES--> <setting></setting> <!--org.eclipse.jdt.core.formatter.tabulation.size=Java:IndentOptions:<Programmatic>--> <setting></setting> <!--Java:IndentOptions:<Programmatic>--> <setting></setting> <!--下面IDEA没有对应设置,使用对应值即可--> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <!--Java:<Programmatic>--> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <!--下面没有对应的IDEA设置,Eclipse先使用对应值--> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <!--IDEA默认配置在同一行,Eclipse使用对应值即可--> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <!--Java:BINARY_OPERATION_SIGN_ON_NEXT_LINE--> <setting></setting> <!--ASSIGNMENT_WRAP 需要设置为 WRAP_AS_NEEDED WRAP_AS_NEEDED . Add in jdt.core-3.12,it's not work in previous version --> <setting></setting> <!--IDEA无配置项,Eclipse使用对应值即可--> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <!--org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=Java:KEEP_CONTROL_STATEMENT_IN_ONE_LINE--> <setting></setting> <!--org.eclipse.jdt.core.formatter.compact_else_if=Java:SPECIAL_ELSE_IF_TREATMENT--> <setting></setting> <!--Java:ALIGN_GROUP_FIELD_DECLARATIONS--> <setting></setting> <!--Java:<Programmatic>--> <setting></setting> <setting></setting> <!--统一为end_of_lint,IDEA默认一致--> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <setting></setting> <!-- <setting id="org.eclipse.jdt.core.compiler.source" value="1.8"/> <setting id="org.eclipse.jdt.core.compiler.compliance" value="1.8"/> <setting id="org.eclipse.jdt.core.compiler.codegen.targetPlatform" value="1.8"/> <setting id="org.eclipse.jdt.core.compiler.problem.enumIdentifier" value="error"/> <setting id="org.eclipse.jdt.core.compiler.problem.assertIdentifier" value="error"/> <setting id="org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode" value="enabled"/> --> <!--Java:KEEP_SIMPLE_BLOCKS_IN_ONE_LINE--> <setting></setting> <!--Java:CLASS_BRACE_STYLE,统一使用end_of_line TODO--> <setting></setting> <setting></setting> <!--org.eclipse.jdt.core.formatter.lineSplit=RIGHT_MARGIN--> <setting></setting> </profile> </profiles>
更多相关知识,请访问常见问题栏目!
以上是idea怎麼格式化程式碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

idea社群版與專業版的差異在授權方式、功能、支援與更新、外掛程式支援、雲端服務與團隊協作、行動開發支援、教育與學習、整合與擴充性、錯誤處理與調試、安全性與隱私保護等方面。詳細介紹:1、授權方式,社群版是免費的,適用於所有開發人員,無論使用什麼作業系統,社群版支援開源專案和商業項目,專業版是付費的,適用於商業開發,專業版有30天的試用期,之後需要購買許可證才能繼續使用等等。

人工智慧AI是當前廣受認可的未來趨勢和發展方向。雖然有些人擔心AI可能會取代所有的工作,但實際上只會取代那些重複性高、產出低的工作。因此,我們應該學會更聰明地工作,而不是使勁努力工作。本文介紹5個由AI驅動的Intellij插件,這些插件可以幫助你提高生產力,減少繁瑣的重複性工作,讓你的工作更有效率、方便。 1GithubCopilotGithubCopilot是由OpenAI和GitHub共同開發的一款人工智慧程式碼輔助工具。它使用了OpenAI的GPT模型來分析程式碼上下文,預測並產生新的程式碼

一、準備工作使用Idea建構一個helloworld的SpringBoot專案。開發環境說明:(1)SpringBoot2.7.0(2)Idea:IntelliJIDEA2022.2.2(3)OS:MacOS環境不太一樣,有些操作是有些微區別的,但是整體的思路是一樣的。二、啟動多個SpringBoot2.1方案一:修改設定檔的連接埠在SpringBoot專案中,連接埠號碼可以在設定檔進行配置,所以最簡單可以想到的方案是修改設定檔application.(properties/yml)的端口配置s

一、開啟idea自動make功能1-從編譯器啟用Automake按:CTRL+SHIFT+ATYPE:makeprojectautomatically按:Enter啟用MakeProject自動功能2-在應用程式運行時啟用Automake按:CTRL+SHIFT+ATYPE:Registry找到keycompiler .automake.allow。

在SpringBoot專案中,如果使用了MyBatis作為持久層框架,使用自動注入時可能會遇到mapper報空指標異常的問題。這是因為在自動注入時,SpringBoot無法正確識別MyBatis的Mapper接口,需要進行一些額外的配置。解決這個問題的方法有兩種:1.在Mapper介面上加入註解在Mapper介面上加入@Mapper註解,告訴SpringBoot這個介面是Mapper接口,需要進行代理。範例如下:@MapperpublicinterfaceUserMapper{//...}2

Stream作業是Java8推出的一大亮點!雖然java.util.stream很強大,但還是有很多開發者在實際工作中很少使用,其中吐槽最多的一個原因就是不好調試,一開始確實是這樣,因為stream這樣的流式操作在DEBUG的時候,是一行程式碼,直接下一步的時候,其實一下就過了好多操作,這樣我們就很難判斷到底是裡面的哪一行出了問題。外掛:JavaStreamDebugger如果你用的IDEA版本比較新的話,這個插件已經是自備的了,就不需要安裝了。如果還沒安裝的話,就手動安裝一下,然後繼續下面

idea是一種Java整合開發環境工具軟體,由JetBrains軟體公司開發。 IDEA提倡智慧編碼,特殊功能有:智慧選取、編碼輔助、靈活的排版、動態語法偵測、程式碼檢查、對JSP的完全支援、預設範本、版本控製完美支援、智慧程式碼等。

IDEA(IntelliJIDEA)是一款強大的整合開發環境,可協助開發人員快速且有效率地開發各種Java應用程式。在Java專案開發中,使用Maven作為專案管理工具能夠幫助我們更好地管理依賴函式庫、建置專案等。本文將詳細介紹如何在IDEA中建立一個Maven專案的基本步驟,同時提供具體的程式碼範例。步驟一:開啟IDEA並建立新專案開啟IntelliJIDEA