私は次のような列挙型を持っています:
public static enum Command
{
login,
register,
logout,
newMessage
}
ファイルをフォーマットすると、出力は次のようになります。
public static enum Command
{
login, register, logout, newMessage
}
@wjansによる答えは、通常の列挙型ではうまくいきましたが、引数を持つ列挙型ではうまくいきませんでした。彼の答えをもう少し詳しく説明するために、Eclipse Junoで最も賢明な書式設定を提供した設定を以下に示します。
Window
> Preferences
> Java
> _Code Style
_> Formatter
Edit
をクリックしますLine Wrapping
_タブを選択しますenum
宣言ツリーノードを選択しますLine wrapping policy
_をWrap all elements, every element on a new line (...)
に設定すると、括弧内に3 of 3と表示されます。Force split, even if line shorter than maximum line width (...)
のチェックを外すと、括弧内に3 of 3と表示されます。Constants
ツリーノードを選択しますForce split, even if line shorter than maximum line width
_を確認してくださいこれにより、enum treenodeの3つのサブノードがConstants
treenodeを除いて同じラッピングポリシーと同じ強制分割ポリシーに設定されるため、引数付きのenumはそれぞれ独自の行でフォーマットされます。引数は、最大行幅を超える場合にのみラップされます。
例:
@ 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)
}
_
フォーマッターの設定でこれを指定できます。
それも少しいですが、会社の方針によりフォーマッターの変更が禁止されている場合、ラップしたくない行の最後にコメントを入れることができます。
public static enum Command
{
login,//
register,//
logout,//
newMessage//
};
ナイスではありませんが、コードの一部のセクションでEclipseフォーマッターをオフにすることができます...
// @formatter:off
public static enum Command {
login,
register,
logout,
newMessage
};
// @formatter:on
このオプションは、Windows-> Preferences-> Java-> Code Style-> Formatter-> Edit-> Off/On Tagsパネルにあります。
「定数」の列挙型宣言の下で行折り返しポリシーを設定する必要があります。
折り返しポリシーを設定します
[〜#〜] and [〜#〜]
最新の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
である必要があります。