Enum 값을 갖는 Set은 EnumSet을 사용하는게 좋습니다.

 

Set의 모든 값이 Enum 값이라면 EnumSet을 대체해서 사용할 수 있습니다. 이 자료형은 간단한 배열을 기반으로한 자료구조를 사용하고 있기 때문에, 다른 집합들에 비해 훨씬 효율적입니다.

규칙을 어긴 코드

public class MyClass {

  public enum COLOR {
    RED, GREEN, BLUE, ORANGE;
  }

  public void doSomething() {
    Set<COLOR> warm = new HashSet<COLOR>();
    warm.add(COLOR.RED);
    warm.add(COLOR.ORANGE);
  }
}

규칙을 준수한 해결책

public class MyClass {

  public enum COLOR {
    RED, GREEN, BLUE, ORANGE;
  }

  public void doSomething() {
    Set<COLOR> warm = EnumSet.of(COLOR.RED, COLOR.ORANGE);
  }
}

If you like SONARKUBE, don’t forget to give me a star. :star2:

원문으로 바로가기

Star This Project