Eclipse Java格式化程序中的换行

时间:2011-12-08 09:54:58

标签: java eclipse formatting format formatter

我正在尝试将Java代码格式化程序配置为具有紧凑格式。我已经将策略设置为“必要时换行”,并将最大行宽设置为80,但要么它包裹它不应该的位置,要么它不会包裹它应该放在哪里...这是我得到的一个例子:

// -------------------------------------------------------------------------80->
public class FormatterTest {
    void test() {
        int i, a = 1, b = 1, c = 1, d = 1;
        i =
                a
                        * b
                        * c
                        * d
                        * (100000000 + 100000000 + 100000000 + 100000000
                                + 100000000 + 100000000 + 100000000 + 100000000 + 100000000);
    }
}
// -------------------------------------------------------------------------80->

我想要的是什么:

    i = a * b * c * d * (100000000 + 100000000 + 100000000 + 100000000
            + 100000000 + 100000000 + 100000000 + 100000000 + 100000000);

感谢您的帮助。

3 个答案:

答案 0 :(得分:1)

如果您在行末添加//,则可以取消格式设置:

i = a * b * c * d * (100000000 + 100000000 + 100000000 + 100000000 //
        + 100000000 + 100000000 + 100000000 + 100000000 + 100000000);

答案 1 :(得分:0)

评论你说"表达式",有不同类型的表达。检查截图。我认为(右侧的eclipse示例代码)看起来像你想要的。

希望它有所帮助。

enter image description here

修改

你可以试试吗

 expressions-> Assignments :Do not wrap

答案 2 :(得分:0)

我设法使用“Java Conventions [内置]”格式化设置在Eclipse中按如下格式进行格式化:

public class FormatterTest {
    void test() {
    int i, a = 1, b = 1, c = 1, d = 1;
    i = (a * b * c * d * (100000000 + 100000000 + 100000000 + 100000000
        + 100000000 + 100000000 + 100000000 + 100000000 + 100000000));
    }
}

出于某种原因,整个表达式的括号是必不可少的。没有它们,我会得到完全不同的格式。

希望这有帮助。