我的枚举如下:
public static enum Command
{
login,
register,
logout,
newMessage
}
格式化文件时,输出变为:
public static enum Command
{
login, register, logout, newMessage
}
答案 0 :(得分:190)
@wjans的答案适用于普通枚举,但不适用于带参数的枚举。为了扩展他的答案,这里是为Eclipse Juno提供最合理格式的设置:
Window
> Preferences
> Java
> Code Style
> Formatter
Edit
Line Wrapping
标签enum
声明treenode Line wrapping policy
设置为Wrap all elements, every element on a new line (...)
,以便现在在括号中显示3个中的3个。Force split, even if line shorter than maximum line width (...)
,现在它在括号中显示3个中的3个。Constants
treenode Force split, even if line shorter than maximum line width
这将enum treenode的3个子节点设置为相同的包装策略,并且除Constants
treenode之外的相同的强制拆分策略,因此带有参数的枚举将在各自的行中进行格式化。参数只有在超过最大线宽时才会换行。
<强>示例:强>
<强> @wjans 强>
enum Example {
CANCELLED,
RUNNING,
WAITING,
FINISHED
}
enum Example {
GREEN(
0,
255,
0),
RED(
255,
0,
0)
}
上述解决方案:
enum Example {
CANCELLED,
RUNNING,
WAITING,
FINISHED
}
enum Example {
GREEN(0, 255, 0),
RED(255, 0, 0)
}
答案 1 :(得分:49)
您可以在格式化程序首选项中指定:
答案 2 :(得分:10)
它也有点难看,但是如果你的公司政策阻止你更改格式化程序,你可以在不想被包装的行的末尾添加注释。
public static enum Command
{
login,//
register,//
logout,//
newMessage//
};
答案 3 :(得分:5)
这不是很好但你可以关闭某些代码部分的Eclipse格式化程序......
// @formatter:off
public static enum Command {
login,
register,
logout,
newMessage
};
// @formatter:on
该选项位于Windows-&gt;首选项 - &gt; Java-&gt;代码样式 - &gt;格式化程序 - &gt;编辑 - &gt;关/开标签面板
答案 4 :(得分:4)
您需要在“常量”的枚举声明下设置换行策略。
将包装政策设为
和强>
答案 5 :(得分:0)
只需添加最新的Eclipse 2018.9
Window > Preferences > Java > Code Style > Formatter
-Edit
Line Wrapping
树节点。Wrapping settings
'enum' declaration
Constants
和Constant arguments
。常量必须为Wrap all elements, every element on a new line
。
常量参数必须为Wrap where necessary
。