Java Data Type How to - Shift int enums








Question

We would like to know how to shift int enums.

Answer

//w  w w.j  av  a  2  s  .  co  m
import java.util.EnumSet;

public class Main {

  public static void main(String[] args) {
    final EnumSet<Style> styles = EnumSet.noneOf(Style.class);
    styles.addAll(EnumSet.range(Style.BOLD, Style.STRIKETHROUGH)); 
    styles.removeAll(EnumSet.of(Style.UNDERLINE, Style.STRIKETHROUGH)); 
    assert EnumSet.of(Style.BOLD, Style.ITALIC).equals(styles); 
    System.out.println(styles);
  }
}

enum Style {
  BOLD, ITALIC, UNDERLINE, STRIKETHROUGH
}

The code above generates the following result.