Java

[Java] 문자열의 모든 문자를 반복하는 가장 빠른 방법

cherishee 2020. 8. 12. 17:37

문자열의 모든 문자를 반복하는 방법은 두가지가 있다.

  1. charAt()을 사용하여 문자열에서 인자로 주어진 값에 해당하는 문자(char)를 리턴받는 방법
    String str = "string입니다.";
    for (int i = 0, n = str.length(); i < n; i++) {
     char c = str.charAt(i);
    }
  2. toCharArray()를 사용하여 문자열의 문자를 char[] 배열로 만드는 방법
    char[] chars = str.toCharArray();
    for (int i = 0, n = chars.length; i < n; i++) {
     char c = chars[i];
    }

두가지 방법 중 뭐가 더 좋다고 할 수 없지만, toCharArray()를 사용하는 경우 char[] 를 선언하기 때문에 조금 더 느리고 메모리를 더 사용한다. 그래서 charAt()를 사용하는 것을 더 선호한다.

참고로 charAt()는 constant-time(O(1)의 시간) operation이다.

예제는 아래를 확인하기!