在Java中格式化长方法调用的可接受方式

Wil*_*zel 7 java coding-style code-structure

这是写好的风格:

objectName.methodWithManyParameters(someLongParameter1, someLongParameter2, someLongParameter3, someLongParameter4, someLongParameter5);
Run Code Online (Sandbox Code Playgroud)

(这对于一条线显然很长)

objectName.methodWithManyParameters
(
    someLongParameter1, 
    someLongParameter2, 
    someLongParameter3, 
    someLongParameter4, 
    someLongParameter5
);
Run Code Online (Sandbox Code Playgroud)

另一种方式是:

objectName.methodWithManyParameters(someLongParameter1, someLongParameter2, 
                                    someLongParameter3, someLongParameter4,
                                    someLongParameter5);
Run Code Online (Sandbox Code Playgroud)

Jor*_*lla 6

根据Oracle 约定

4.2 换行线

当表达式无法容纳在一行中时,请根据以下一般原则将其分解:

  • 逗号后换行。
  • 在操作员之前中断。
  • 优先选择较高级别的休息而非较低级别的休息。
  • 将新行与前一行同一级别的表达式开头对齐。

如果上述规则导致代码混乱或代码被挤压到右边距,只需缩进 8 个空格即可。

以下是中断方法调用的一些示例:

someMethod(longExpression1, longExpression2, longExpression3, 
        longExpression4, longExpression5);
Run Code Online (Sandbox Code Playgroud)


恢复中

第二个选项是标准约定,第一个选项更具可读性,但可能会损害非常长的方法,或者如果由于类的长度而导致许多调用......


Dea*_*n J 5

如果您正在与其他人合作,或者在预先存在的代码库中工作,请使用他们已经使用的任何标准。80 与 100 列、选项#1/2/3 等。

如果您自己工作,乔迪的回答很明确。使用 Oracle 约定,并且可能采用 100 个字符的行长度;我们现在的屏幕比 1996 年的显示器能容纳更多的文本。