Javaで列挙値を非表示にする方法は?

sulox32:

私が権利を持つ列挙型クラスを持っています。

public enum UserRight {
    SYSTEMMANAGEMENT, USERADMINISTRATION, ROLEADMINISTRATION, 
    STRUCTUREADMINISTRATION, DOCUMENTADMINISTRATION;
}

今私はSYSTEMMANAGEMENT除くリストに私のすべての権利をロードします。私はこのように今それを実行します。

availrightslist.addAll(Arrays.asList(UserRight.values()));

どのように私はSYSTEMMANAGEMENT権なしにすべての権限を読み込むことができますか?

リノ:

あなたはすべてを追加した後は、それを削除することができます。

availrightslist.remove(UserRight.SYSTEMMANAGEMENT);

あるいは、いくつかの使用EnumSet マジックを

Set<UserRight> rights = EnumSet.complementOf(EnumSet.of(UserRight.SYSTEMMANAGEMENT));

あなたが持っている場合は、一般CollectionenumSを、それを使用することをお勧めしますEnumSetたのでUserRight、本当に意味がない2回。

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=195943&siteId=1