Skip to content

IntelliJ IDEA code style settings for my Android/Java Team

Notifications You must be signed in to change notification settings

cesards/java-code-styles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Repository files navigation

Java/Android Code Styles

IntelliJ IDEA code style settings for Square's Java and Android projects.

Installation

  • Run the install.sh script.
  • Restart IntelliJ if it's running.
  • Open IntelliJ/AS Project Settings -> Code Styles, change the code style for the project to the one you want.

Code styles changes from the AS default ones ------------------------------------------------ ### CesardsAndroid
#### Code Styles

Indents Detection

  • ✓ Detect and use existing file indents for editing

    <optionname="AUTODETECT_INDENTS"value="true" />
##### Java ###### Tabs and Indents
  • Tab size: 2 / Indent: 2 / Continuation indent: 4

    <indentOptions> <optionname="INDENT_SIZE"value="2" /> <optionname="CONTINUATION_INDENT_SIZE"value="4" /> <optionname="TAB_SIZE"value="2" /> </indentOptions>
###### Spaces

▼__Before Left Brace__

  • ✓ Array initializer left brace

    <optionname="SPACE_BEFORE_ARRAY_INITIALIZER_LBRACE"value="true" />
    int[] empty = newint[]{};

Within

  • ✓ Code braces

    <optionname="SPACE_WITHIN_BRACES"value="true" />
    interfaceAbba{}
  • ✓ Array initializer braces

    <optionname="SPACE_WITHIN_ARRAY_INITIALIZER_BRACES"value="true" />
    @SuppressWarnings({"ALL" })
###### Wrapping and Braces

Keep when reformatting

  • ✗ Comment at first column

    <optionname="KEEP_FIRST_COLUMN_COMMENT"value="false" />
    // todo something
  • ✓ Simple methods in one line

    <optionname="KEEP_SIMPLE_METHODS_IN_ONE_LINE"value="true" />
    publicvoidfoo1(inti1, inti2, inti3, inti4, inti5, inti6, inti7){}
  • ✓ Simple classes in one line

    <optionname="KEEP_SIMPLE_CLASSES_IN_ONE_LINE"value="true" />
    newObject(){};

Extends / implements list ⇨ Wrap if long

<optionname="EXTENDS_LIST_WRAP"value="1" />
publicclassThisIsASampleClassextendsC1implementsI1, I2, I3, I4, I5{
  • Extends / implements keyword ⇨ Wrap if long

    <optionname="EXTENDS_KEYWORD_WRAP"value="1" />
    publicclassThisIsASampleClassextendsC1implementsI1, I2, I3, I4, I5{

Throws list ⇨ Wrap if long

<optionname="THROWS_LIST_WRAP"value="1" />
publicstaticvoidlongerMethod() throwsException1, Exception2, Exception3{
  • Throws keyword ⇨ Wrap if long

    <optionname="THROWS_KEYWORD_WRAP"value="1" />
    publicstaticvoidlongerMethod() throwsException1, Exception2, Exception3{

Method declaration parameters ⇨ Chop down if long

<optionname="METHOD_PARAMETERS_WRAP"value="5" />
publicvoidfoo1(inti1, inti2, inti3, inti4, inti5, inti6, inti7){
  • ✓ New line after '('

    <optionname="METHOD_PARAMETERS_LPAREN_ON_NEXT_LINE"value="true" />
    publicvoidfoo1( inti1, inti2, inti3, inti4, inti5, inti6, inti7){}
  • ✓ Place ')' on new line

    <optionname="METHOD_PARAMETERS_RPAREN_ON_NEXT_LINE"value="true" />
    publicvoidfoo1( inti1, inti2, inti3, inti4, inti5, inti6, inti7 ){}

Method call arguments ⇨ Chop down if long

<optionname="CALL_PARAMETERS_WRAP"value="5" />
foo1(0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057);
  • ✓ New line after '('

    <optionname="CALL_PARAMETERS_LPAREN_ON_NEXT_LINE"value="true" />
    foo1( 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057);
  • ✓ Place ')' on new line

    <optionname="CALL_PARAMETERS_RPAREN_ON_NEXT_LINE"value="true" />
    foo1( 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057 );

Chained method calls ⇨ Chop down if long

<optionname="METHOD_CALL_CHAIN_WRAP"value="5" />
super.getFoo() .foo() .getBar() .bar();

if() statement

  • Force braces ⇨ Always

    <optionname="IF_BRACE_FORCE"value="3" />
    if (2 < 3){return} elseif (2 > 3){return} else{return}

for() statement ⇨ Wrap if long

<optionname="FOR_STATEMENT_WRAP"value="1" />
for (inti = 0; i < 0xFFFFFF; i += 2)
  • ✗ Align when multiline

    <optionname="ALIGN_MULTILINE_FOR"value="false" />
    for (inti = 0; i < 0xFFFFFF; i += 2)
  • Force braces ⇨ Always

    <optionname="FOR_BRACE_FORCE"value="3" />
    for (inti = 0; i < 0xFFFFFF; i += 2){System.out.println(i)}
  • ✓ New line after '('

    <optionname="FOR_STATEMENT_LPAREN_ON_NEXT_LINE"value="true" />
    for ( inti = 0; i < 0xFFFFFF; i += 2){
  • ✓ Place ')' on new line

    <optionname="FOR_STATEMENT_RPAREN_ON_NEXT_LINE"value="true" />
    for ( inti = 0; i < 0xFFFFFF; i += 2 ){

while() statement

  • Force braces ⇨ Always

    <optionname="WHILE_BRACE_FORCE"value="3" />
    while (x < 50000){x++}

do{} while() statement

  • Force braces ⇨ Always

    <optionname="DOWHILE_BRACE_FORCE"value="3" />
    do{x++} while (x < 10000);

try-with-resources ⇨ Wrap if long

<optionname="RESOURCE_LIST_WRAP"value="1" />
try (MyResourcer1 = getResource(); MyResourcer2 = null){doSomething()}
  • ✓ New line after '('

    <optionname="RESOURCE_LIST_LPAREN_ON_NEXT_LINE"value="true" />
  • ✓ Place ')' on new line

    <optionname="RESOURCE_LIST_RPAREN_ON_NEXT_LINE"value="true" />
    try ( MyResourcer1 = getResource(); MyResourcer2 = null ){

Binary expressions ⇨ Wrap if long

<optionname="BINARY_OPERATION_WRAP"value="1" />
intx = (3 + 4 + 5 + 6) * (7 + 8 + 9 + 10) * (11 + 12 + 13 + 14 + 0xFFFFFFFF); asserti + j + k + l + n + m <= 2 : "assert description"; inty = 2 > 3 ? 7 + 8 + 9 : 11 + 12 + 13;
  • ✓ Operation sign on next line

    <optionname="BINARY_OPERATION_SIGN_ON_NEXT_LINE"value="true" />
    intx = (3 + 4 + 5 + 6) * (7 + 8 + 9 + 10) * (11 + 12 + 13 + 14 + 0xFFFFFFFF); asserti + j + k + l + n + m <= 2 : "assert description";
  • ✓ New line after {

    <optionname="PARENTHESES_EXPRESSION_LPAREN_WRAP"value="true" />
    intx = (3 + 4 + 5 + 6) * ( 7 + 8 + 9 + 10) * ( 11 + 12 + 13 + 14 + 0xFFFFFFFF);
  • ✓ Place } on new line

    <optionname="PARENTHESES_EXPRESSION_RPAREN_WRAP"value="true" />
    intx = (3 + 4 + 5 + 6) * ( 7 + 8 + 9 + 10 ) * ( 11 + 12 + 13 + 14 + 0xFFFFFFFF );

Assignment statement ⇨ Wrap if long

<optionname="ASSIGNMENT_WRAP"value="1" />
int[] a = newint[]{1, 2, 0x0052, 0x0053, 0x0054};
  • ✓ Assignment sign on next line

    <optionname="PLACE_ASSIGNMENT_SIGN_ON_NEXT_LINE"value="true" />
    int[] a = newint[]{1, 2, 0x0052, 0x0053, 0x0054};

Ternary operation ⇨ Wrap if long

<optionname="TERNARY_OPERATION_WRAP"value="1" />
inty = 2 > 3 ? 7 + 8 + 9 : 11 + 12 + 13;
  • ? and : signs on next line

    <optionname="TERNARY_OPERATION_SIGNS_ON_NEXT_LINE"value="true" />
    inty = 2 > 3 ? 7 + 8 + 9 : 11 + 12 + 13;

Array initializer ⇨ Wrap always

<optionname="ARRAY_INITIALIZER_WRAP"value="2" />
int[] a = newint[]{1, 2, 0x0052, 0x0053, 0x0054};
  • ✓ New line after {

     <optionname="ARRAY_INITIALIZER_LBRACE_ON_NEXT_LINE"value="true" />
    int[] a = newint[]{1, 2, 0x0052, 0x0053, 0x0054 };
  • ✓ Place } on new line

     <optionname="ARRAY_INITIALIZER_RBRACE_ON_NEXT_LINE"value="true" />
    int[] a = newint[]{1, 2, 0x0052, 0x0053, 0x0054 };

Assert statement ⇨ Wrap if long

<optionname="ASSERT_STATEMENT_WRAP"value="1" />
asserti + j + k + l + n + m <= 2 : "assert description";
  • : signs on next line

    <optionname="ASSERT_STATEMENT_COLON_ON_NEXT_LINE"value="true" />
    asserti + j + k + l + n + m <= 2 : "assert description";

Enums constants ⇨ Wrap always

<optionname="ENUM_CONSTANTS_WRAP"value="2" />
enumBreed{Dalmatian(), Labrador(), Dachshund() }

Parameter annotations ⇨ Wrap if long

<optionname="PARAMETER_ANNOTATION_WRAP"value="1" />
publicvoidmethod(@Annotation1@Annotation3(param1 = "value1", param2 = "value2") finalintparam){

Local variable annotations ⇨ Wrap always

<optionname="VARIABLE_ANNOTATION_WRAP"value="2" />
@Annotation1@Annotation3(param1 = "value1", param2 = "value2") finalintlocalVariable;

Annotation parameters ⇨ Chow down if long

<optionname="ANNOTATION_PARAMETER_WRAP"value="5" />
@Annotation3(param1 = "value1", param2 = "value2")
###### Blank Lines

In declarations ⇨ 1

 <optionname="KEEP_BLANK_LINES_IN_DECLARATIONS"value="1" />
publicclassFoo{privateintfield1; privateintfield2}

In code ⇨ 1

<optionname="KEEP_BLANK_LINES_IN_CODE"value="1" />
if (places != null && !places.isEmpty()){placeModelCollection = newArrayList<>(); for (Placeplace : places){placeModelCollection.add(transform(place))} }

Before } ⇨ 0

<optionname="KEEP_BLANK_LINES_BEFORE_RBRACE"value="0" />
publicvoidfoo1(){newRunnable(){publicvoidrun(){} }}

Around method interface ⇨ 0

<optionname="BLANK_LINES_AROUND_METHOD_IN_INTERFACE"value="0" />
interfaceTestInterface{intMAX = 10; intMIN = 1; voidmethod1(); voidmethod2()}
###### JavaDoc

Alignment

  • ✗ Align parameter descriptions

    <optionname="JD_ALIGN_PARAM_COMMENTS"value="false" />
    /** * @param i short named parameter description * @param longParameterName long named parameter description * @param missingDescription */
  • ✗ Align thrown exception descriptions

    <optionname="JD_ALIGN_EXCEPTION_COMMENTS"value="false" />
    /** * @throws XXXException description. * @throws YException description. * @throws ZException */

Blank lines

  • ✓ After parameter descriptions

     <optionname="JD_ADD_BLANK_AFTER_PARM_COMMENTS"value="true" />
    /** * @param missingDescription * * @return return description. */
  • ✓ After return tag

     <optionname="JD_ADD_BLANK_AFTER_RETURN"value="true" />
    /** * @param missingDescription * * @return return description. * * @throws XXXException description. */

Invalid tags

  • ✗ Keep empty @param tags

     <optionname="JD_KEEP_EMPTY_PARAMETER"value="false" />
  • ✗ Keep empty @return tags

     <optionname="JD_KEEP_EMPTY_RETURN"value="false" />
  • ✗ Keep empty @throws tags

     <optionname="JD_KEEP_EMPTY_EXCEPTION"value="false" />

Other

  • ✓ Wrap at right margin

     <optionname="WRAP_COMMENTS"value="true" />
    /** * This is a method description that is * long enough to exceed right margin. * <p> * Another paragraph of the description * placed after blank line. * <p> * Line with manual line feed. */
  • ✗ Generate <p/> on empty lines

     <optionname="JD_P_AT_EMPTY_LINES"value="false" />
    /** * This is a method description that is * long enough to exceed right margin. * * Another paragraph of the description * placed after blank line. * * Line with manual line feed. */
  • ✗ Do not wrap one line comments

     <optionname="JD_DO_NOT_WRAP_ONE_LINE_COMMENTS"value="true" />
    /** One-line comment */publicabstractStringsampleMethod2();
  • ✓ Preserve line feeds

     <optionname="JD_PRESERVE_LINE_FEEDS"value="true" />
    /** * Another paragraph of the description * placed after blank line. * <p/> * Line with manual * line feed. */
###### Imports

Class count to use import with * ⇨ 999

<optionname="CLASS_COUNT_TO_USE_IMPORT_ON_DEMAND"value="999" />

Names count to use static import with * ⇨ 999

<optionname="NAMES_COUNT_TO_USE_IMPORT_ON_DEMAND"value="999" />

Import Layout

<packagename="android"withSubpackages="true"static="false" /> <packagename="com"withSubpackages="true"static="false" /> <packagename="junit"withSubpackages="true"static="false" /> <packagename="net"withSubpackages="true"static="false" /> <packagename="org"withSubpackages="true"static="false" /> <packagename="java"withSubpackages="true"static="false" /> <packagename="javax"withSubpackages="true"static="false" /> <packagename=""withSubpackages="true"static="false" /> <emptyLine /> <packagename=""withSubpackages="true"static="true" />
import android.* import com.* import junit.* import net.* import org.* import java.* import javax.* import all other imports <blank line> import static all other imports 
###### Arrangement

Grouping rules

  • ✓ Keep getters and setters together

    <group> <type>GETTERS_AND_SETTERS</type> <order>KEEP</order> </group>
  • ✓ Keep overriden methods together (keep order)

    <group> <type>OVERRIDDEN_METHODS</type> <order>KEEP</order> </group>
###### Code Generation

Final Modifier

  • ✓ Make generated local variables final

    <optionname="GENERATE_FINAL_LOCALS"value="true" />

Comment Code

  • ✗ Line comment at first column

     <optionname="LINE_COMMENT_AT_FIRST_COLUMN"value="false" />
  • ✗ Block comment at first column

     <optionname="BLOCK_COMMENT_AT_FIRST_COLUMN"value="false" />

Default Visibility

  • ✓ Package local

    <optionname="VISIBILITY"value="packageLocal" />
##### XML ###### Tabs and Indents
  • Tab size: 2 / Indent: 2 / Continuation indent: 4

    <indentOptions> <optionname="INDENT_SIZE"value="2" /> <optionname="TAB_SIZE"value="2" /> </indentOptions>
###### Other

✓ Keep line breaks

<optionname="XML_KEEP_LINE_BREAKS"value="true" />

Keep blank lines ⇨ 1

<optionname="XML_KEEP_BLANK_LINES"value="1" />
<application-components> <description>Our product makes development a real pleasure. It decreases the time you spend on routine, repetitive. </description> </application-components>

Wrap attributes ⇨ Wrap always

<optionname="XML_ATTRIBUTE_WRAP"value="2" />
<optionname="workspace" value="true"/>

✗ Align attrivutes

<optionname="XML_ALIGN_ATTRIBUTES"value="false" />
<optionname="workspace" value="true"/>

Spaces

  • ✗ In empty tag

    <optionname="XML_SPACE_INSIDE_EMPTY_TAG"value="false" />
    <optionname="workspace"/>
###### Android

Layout Files

  • ✗ Insert blank line before tag

     <optionname="LAYOUT_SETTINGS"> <value> <optionname="INSERT_BLANK_LINE_BEFORE_TAG"value="false" /> </value> </option>

Other XML resource files

  • ✗ Insert line break before first attribute

     <optionname="OTHER_SETTINGS"> <value> <optionname="INSERT_LINE_BREAK_BEFORE_FIRST_ATTRIBUTE"value="false" /> </value> </option>
##### Groovy ###### Tabs and Indents
  • Tab size: 2 / Indent: 2 / Continuation indent: 4

    <indentOptions> <optionname="INDENT_SIZE"value="2" /> <optionname="CONTINUATION_INDENT_SIZE"value="4" /> <optionname="TAB_SIZE"value="2" /> </indentOptions>
###### Wrapping and Braces

Keep when reformatting

  • ✗ Comment at first column

    <optionname="KEEP_FIRST_COLUMN_COMMENT"value="false" />
    // todo something

Extends / implements list ⇨ Wrap if long

<optionname="EXTENDS_LIST_WRAP"value="1" />
publicclassThisIsASampleClassextendsC1implementsI1, I2, I3, I4, I5{
  • Extends / implements keyword ⇨ Wrap if long

    <optionname="EXTENDS_KEYWORD_WRAP"value="1" />
    publicclassThisIsASampleClassextendsC1implementsI1, I2, I3, I4, I5{

Throws list ⇨ Wrap if long

<optionname="THROWS_LIST_WRAP"value="1" />
publicstaticvoidlongerMethod() throwsException1, Exception2, Exception3{
  • Throws keyword ⇨ Wrap if long

    <optionname="THROWS_KEYWORD_WRAP"value="1" />
    publicstaticvoidlongerMethod() throwsException1, Exception2, Exception3{

Method declaration parameters ⇨ Chop down if long

<optionname="METHOD_PARAMETERS_WRAP"value="5" />
publicvoidfoo1(inti1, inti2, inti3, inti4, inti5, inti6, inti7){
  • ✓ New line after '('

    <optionname="METHOD_PARAMETERS_LPAREN_ON_NEXT_LINE"value="true" />
    publicvoidfoo1( inti1, inti2, inti3, inti4, inti5, inti6, inti7){}
  • ✓ Place ')' on new line

    <optionname="METHOD_PARAMETERS_RPAREN_ON_NEXT_LINE"value="true" />
    publicvoidfoo1( inti1, inti2, inti3, inti4, inti5, inti6, inti7 ){}

Method call arguments ⇨ Chop down if long

<optionname="CALL_PARAMETERS_WRAP"value="5" />
foo1(0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057);
  • ✓ New line after '('

    <optionname="CALL_PARAMETERS_LPAREN_ON_NEXT_LINE"value="true" />
    foo1( 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057);
  • ✓ Place ')' on new line

    <optionname="CALL_PARAMETERS_RPAREN_ON_NEXT_LINE"value="true" />
    foo1( 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057 );

Chained method calls ⇨ Wrap if long

<optionname="METHOD_CALL_CHAIN_WRAP"value="5" />
super.getFoo() .foo() .getBar() .bar();
  • ✓ Wrap first call

    <optionname="WRAP_FIRST_METHOD_IN_CALL_CHAIN"value="true" />
    super .getFoo() .foo() .getBar() .bar();

if() statement

  • Force braces ⇨ Always

    <optionname="IF_BRACE_FORCE"value="3" />
    if (2 < 3){return} elseif (2 > 3){return} else{return}

for() statement ⇨ Wrap if long

<optionname="FOR_STATEMENT_WRAP"value="1" />
for (inti = 0; i < 0xFFFFFF; i += 2)
  • ✗ Align when multiline

    <optionname="ALIGN_MULTILINE_FOR"value="false" />
    for (inti = 0; i < 0xFFFFFF; i += 2)
  • Force braces ⇨ Always

    <optionname="FOR_BRACE_FORCE"value="3" />
    for (inti = 0; i < 0xFFFFFF; i += 2){System.out.println(i)}
  • ✓ New line after '('

    <optionname="FOR_STATEMENT_LPAREN_ON_NEXT_LINE"value="true" />
    for ( inti = 0; i < 0xFFFFFF; i += 2){
  • ✓ Place ')' on new line

    <optionname="FOR_STATEMENT_RPAREN_ON_NEXT_LINE"value="true" />
    for ( inti = 0; i < 0xFFFFFF; i += 2 ){

while() statement

  • Force braces ⇨ Always

    <optionname="WHILE_BRACE_FORCE"value="3" />
    while (x < 50000){x++}

Binary expressions ⇨ Wrap if long

<optionname="BINARY_OPERATION_WRAP"value="1" />
intx = (3 + 4 + 5 + 6) * (7 + 8 + 9 + 10) * (11 + 12 + 13 + 14 + 0xFFFFFFFF); asserti + j + k + l + n + m <= 2 : "assert description"; inty = 2 > 3 ? 7 + 8 + 9 : 11 + 12 + 13;
  • ✓ New line after {

    <optionname="PARENTHESES_EXPRESSION_LPAREN_WRAP"value="true" />
    intx = (3 + 4 + 5 + 6) * ( 7 + 8 + 9 + 10) * ( 11 + 12 + 13 + 14 + 0xFFFFFFFF);
  • ✓ Place } on new line

    <optionname="PARENTHESES_EXPRESSION_RPAREN_WRAP"value="true" />
    intx = (3 + 4 + 5 + 6) * ( 7 + 8 + 9 + 10 ) * ( 11 + 12 + 13 + 14 + 0xFFFFFFFF );

Assignment statement ⇨ Wrap if long

<optionname="ASSIGNMENT_WRAP"value="1" />
s1 = s2 = s3 = "012345678901456"

Ternary operation ⇨ Wrap if long

<optionname="TERNARY_OPERATION_WRAP"value="1" />
inty = 2 > 3 ? 7 + 8 + 9 : 11 + 12 + 13;

Assert statement ⇨ Wrap if long

<optionname="ASSERT_STATEMENT_WRAP"value="1" />
asserti + j + k + l + n + m <= 2 : "assert description";

Enums constants ⇨ Wrap always

<optionname="ENUM_CONSTANTS_WRAP"value="2" />
enumBreed{Dalmatian(), Labrador(), Dachshund() }

Parameter annotations ⇨ Wrap if long

<optionname="PARAMETER_ANNOTATION_WRAP"value="1" />
publicvoidmethod(@Annotation1@Annotation3(param1 = "value1", param2 = "value2") finalintparam){

Local variable annotations ⇨ Wrap always

<optionname="VARIABLE_ANNOTATION_WRAP"value="2" />
@Annotation1@Annotation3(param1 = "value1", param2 = "value2") finalintlocalVariable;
###### Blank Lines

In declarations ⇨ 1

 <optionname="KEEP_BLANK_LINES_IN_DECLARATIONS"value="1" />
publicclassFoo{privateintfield1; privateintfield2}

In code ⇨ 1

<optionname="KEEP_BLANK_LINES_IN_CODE"value="1" />
if (places != null && !places.isEmpty()){placeModelCollection = newArrayList<>(); for (Placeplace : places){placeModelCollection.add(transform(place))} }

Before } ⇨ 0

<optionname="KEEP_BLANK_LINES_BEFORE_RBRACE"value="0" />
publicvoidfoo1(){newRunnable(){publicvoidrun(){} }}

Around method interface ⇨ 0

<optionname="BLANK_LINES_AROUND_METHOD_IN_INTERFACE"value="0" />
interfaceTestInterface{intMAX = 10intMIN = 1defmethod1() voidmethod2() }
###### Imports

Class count to use import with * ⇨ 999

<optionname="CLASS_COUNT_TO_USE_IMPORT_ON_DEMAND"value="999" />

Names count to use static import with * ⇨ 999

<optionname="NAMES_COUNT_TO_USE_IMPORT_ON_DEMAND"value="999" />

Import Layout

<packagename="android"withSubpackages="true"static="false" /> <packagename="com"withSubpackages="true"static="false" /> <packagename="junit"withSubpackages="true"static="false" /> <packagename="net"withSubpackages="true"static="false" /> <packagename="org"withSubpackages="true"static="false" /> <packagename="java"withSubpackages="true"static="false" /> <packagename="javax"withSubpackages="true"static="false" /> <packagename=""withSubpackages="true"static="false" /> <emptyLine /> <packagename=""withSubpackages="true"static="true" />
importandroid.* importcom.* importjunit.* importnet.* importorg.* importjava.* importjavax.* importallotherimports <blankline> importstaticallotherimports

#### Related sources

License

Public domain

About

IntelliJ IDEA code style settings for my Android/Java Team

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell100.0%