Java - Util 생성 및 static 메서드 활용

  • Util 활용

    • 일회용 로직이 아닌 이후에도 다른 곳에서 사용될 기능들은 따로 분리하여 재활용

    • static을 활용하면 JVM 메모리의 클래스 영역에 올라가며, 인스턴스 생성 없이 클래스를 통해 바로 호출하여 사용 가능하다.

      • final은 수정되지 않는 값으로 static final을 통해 상수를 생성하여 활용 가능

  • 예시1) @DateTimeFormatter을 사용할 수 없는 버전에서 포맷터 util을 활용

public static DateTimeFormatter dateTimeFormatter(){
        return DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
    }



  • 예시2) HashMap 자료구조에서 Comparator를 사용한 정렬에서 util 활용

public class ComparatorUtil {
    
    public static Comparator<Map<String,Object>> getDisplayOrderComparator(){
        return Comparator.comparing( 
            (Map<String,Object> map)-> {
                return Integer.parseInt(map.get("displayOrder").toString());
            }
         );  
    }

    public static Comparator<Map<String, Object>> getInsertDateComparator(){
        return Comparator.comparing( 
           (Map<String,Object> map)-> {
               return map.get("insertDate").toString();
           }
        );
    }
}

 

productGroupMapList.stream()
            .sorted(ComparatorUtil.getDisplayOrderComparator()
                   .thenComparing(ComparatorUtil.getInsertDateComparator())).collect(Collectors.toList());

  

 

댓글을 작성해보세요.