java 성능 향상 팁 (String.split, SimeDateFormat)

java 기본 클래스 중에 단순한 기능에 비하여 성능이 떨어지는 것들이 있다.

이따금 호출되는 정도라면 크게 상관 없지만, 아주 많이 반복적으로 호출되는 코드에 아래 클래스를 사용하면 성능이 떨어진다.

String.split 대신에 StringTokenizer를 사용할 수 있는데

아래 조건에서는 StringTokenizer가 더 빠르다.

  • 구분자가 1자임.
  • 구분가자 유니코드가 아님

SimeDateFormat 함수는 일단 Thread Safe가 아니다. Multi Thread 환경에서는 의도했던 결과가 나오지 않을 수도 있음.

대신에 더 빠른 DateTimeFormatter 함수를 쓰는 편이 좋다. 게다가 Thread Safe이다.

import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

public class DateTimeFormatterExample {
public static void main(String[] args) {
LocalDateTime now = LocalDateTime.now();

Leave a Comment