私は128の値を持つenumクラスを使用するプロジェクトを持っており、エンドユーザーが自分の使用方法(たとえば128のうち20個)を選択することを許可したいcheckbotablecellでjavafx tableviewを作成しましたが、うまく動作しますが、各値の可視性を定義するためにenumでbooleanフィールドを作成する必要がありますが、すべての列挙フィールドはfinalであり、動的に変更することはできません。ですから、各enum値の可視性を動的に定義する方法が問題です。Java、enum値の選択されたリストを生成
0
A
答えて
1
EnumクラスのEnumからBooleanへのマップを作成できます。
例:static final EnumMap<EnumType , Boolean> visibilityMap
。
さらに、可視性にアクセスするためのgetterメソッドとsetterメソッドを追加します。
+1
正確には、EnumMap
1
EnumSetを保存します。
あなたのenumクラスは、128個のシングルトンオブジェクトを定義しています。複数のオブジェクトを持つことはできません。""同じenumオブジェクトです。解決策は、列挙型オブジェクトを含むクラスを持つことです。または、いくつかの列挙定数のEnumSetを持つ。
EnumSetは、列挙型のためにひどく最適化され、ビルドメソッドを提供するSet実装です。 コンストラクタでは、実際の列挙型自体を型消しで渡すので、クラスは引き続き機能します。
EnumSet<Weekday> weekend = EnumSet.of(Weekday.SATURDAY, Weekday.SUNDAY);
関連する問題
- 1. 「選択された」Enum値をループしますか?
- 2. javaのenum値のリスト
- 3. 生成された数値から変数を選択する
- 4. 選択された選択(選択された値)例
- 5. 次のenum値の選択方法は?
- 6. 動的に生成されたフィールド値の値による選択
- 7. パスドロップダウン選択された値(リスト)Ajaxを介したパラメータは
- 8. リスト内の 'previous'値を選択するネストされたLINQクエリ
- 9. マスクで選択されたピクセルのリストを作成する
- 10. collection_select選択された値
- 11. AJAXで生成された選択はリダイレクトされません
- 12. AngularJSで動的に生成されたドロップダウンの選択値を取得
- 13. ランダムに選択されたアイテムのリスト
- 14. のLINQ:グループ化された選択リスト
- 15. Spring 3のリンクされた選択リスト
- 16. 許可されたドロップダウン/選択値のリスト
- 17. mapのリストをterraformの選択されたフィールド値のリストにマップ
- 18. 動的に生成されたSWTテーブルからの選択値の取得
- 19. ASP.NET MVC選択リストの選択値
- 20. 複数の動的に生成された複数の選択に対してsubmit時のJquery選択値
- 21. 生成されたコンテンツの親div属性を選択
- 22. 数値から選択オプションを生成
- 23. ListBoxの選択されたインデックスと選択された値を取得
- 24. ダイナミックに作成された選択ボックスで値を事前に選択
- 25. Java enumの値
- 26. Java:オーバーロードされたコンストラクタ間の選択
- 27. 最近選択された色をJavaで選択
- 28. KnockoutJSでリンクされた選択リスト
- 29. Ajaxで生成されたツールチップの選択されたラジオボタンの値を取得します
- 30. 生成された要素コンポーネントを選択しますか?
EnumSetに「可視」にしたい値を入れます。 –