让Eclipse包装for循环的括号

时间:2012-03-01 13:41:29

标签: java eclipse formatting

我理解简洁明了的代码的重要性,如果可能的话,应该避免使用代码行换行。但是,对这个项目的要求是不应该超出第80列,我被要求使用详细的变量命名。因此,需要包含像for循环括号一样简单的东西,这就是我发现Eclipse不足的地方。

Eclipse似乎不能包装for循环的括号或保留包装集。例如,我的初始化语句,表达式和更新/计数器位于不同的行上,如下所示:

for (initialization;
  expression;
  update/counter;)
{
  //code...
}

当按 Ctrl + Shift + f 时,Eclipse会成功:

for (initialization; expression; update/counter;)
{
  //code...
}

有没有办法让Eclipse保留这种格式。我已经创建了一个自定义的Eclipse格式化程序,但是找不到任何包含for循环括号的设置。我确实看到一篇建议使用//的帖子,但这在for循环的括号内不起作用。

3 个答案:

答案 0 :(得分:2)

我不记得在每个for“initial”,“expression”,“update”之后保留换行符的选项。其余的可以完成,但不能在for循环的括号内包装。

如果你真的需要保留这样的包装,你可能想要在这些行上完全禁用格式化程序?如果你转到formater设置(Window> preferences> java> code style> formatter,然后点击“edit ...”),然后点击“Off / On Tags”标签(出现在Eclipse 3.6 IIRC中) ,您可以启用标签以禁用代码特定部分的格式化程序。

使用默认标签,可以得到类似的内容:

// @formatter:off
for (initialization;
  expression;
  update/counter)
// @formatter:on
{
  //code...
}

答案 1 :(得分:1)

您也可以这样使用:

for (/**/initialization;
/**/expression;
/**/update/counter;)
/**/{
  //code...
}

答案 2 :(得分:0)

这也有效:

for (initialization; //
expression; //
update/counter) {
  // code...
}