1

有没有办法阻止 Eclipse 在块打开大括号之前添加新行?

Eclipse 格式如下代码

p = new JPanel(new GridLayout(0, 1)); {
    p.add(login);
    p.add(password);
}
frame.add(p, BorderLayout.EAST);

p = new JPanel(new GridLayout(0, 1));
{
    p.add(login);
    p.add(password);
}
frame.add(p, BorderLayout.EAST);
4

3 回答 3

1

转到项目-> 属性-> Java Coe 样式-> 格式化程序-> 配置工作区设置-> 编辑-> 大括号

将“匿名类声明”更改为“同一行”

于 2013-04-13T11:43:03.440 回答
1

我有时也使用这种技术。

我认为您将无法在 Eclipse 中执行此操作。

我会说,这很好:)

想想,p = new JPanel(new GridLayout(0, 1));不是一个控制下一个块的语句,因此它不能打开它。在阅读代码时,我们发现}我们直观地期望开头的 for/if/etc 是{. 但是,p = new ...这没有任何意义——首先想到的是,IF 或其他东西在哪里!:)

我们只希望块与外部块分开 - 在文本上或在 vars 可见性中。因此,当向上滚动时,我们发现{以相同的缩进开始(之前没有控制或其他语句) - 就是这样。没有其他想法,一切都很好。

只要改变你的想法,你就会喜欢{排队。

ps 我使用标准格式,所以所有其他起始大括号都在我的代码的行尾。

于 2013-04-13T22:52:29.683 回答
0

我也非常喜欢在创建类时将初始化代码分组到一个块中。所以这是我使用的一个利用静态初始化器的小技巧:

p = new JPanel(new GridLayout(0, 1)) {{
    add(login);
    add(password);
}};
frame.add(p, BorderLayout.EAST);

如您所见,您可以调用“add”,而无需在它们前面加上“p”。如:“p.add”,您不再需要担心 Eclipse 将大括号放在下一行的开头,因为分号放置在整个块的末尾。

于 2013-12-05T17:40:08.640 回答