[프로그래머스] JadenCase 문자열 만들기

The Flawless Bead·2023년 3월 13일
0

프로그래머스

목록 보기
18/20

🔗문제 보러가기 👉 JadenCase 문자열 만들기


📌 문제의 핵심

  1. new StringTokenizer(문자열, "구분자", 구분자 포함여부)
    - hasMoreTokens() : 남은 토큰이 있으면 true, 없다면 false
    - nextToken() : 다음 토큰을 String 으로 반환
  2. toUpperCase() / toLowerCase() : 문자열을 모두 대문자/소문자로 바꿈
  3. replaceFirst() : 문자열에서 처음으로 나오는 조건만 바꿈

✅ 문제 풀이

  1. new StringTokenizer(s.toLowerCase(), " " ,true)
    • 단어의 첫 문자 빼고는 모두 소문자여야 하기때문에 s.toLowerCase() 로 변환한 뒤 StringTokenizer로 나눠줘야 한다.
    • 공백문자가 연속해서 나올 수 있기때문에 구분자(공백)도 토큰으로 포함시켜야 한다.
  2. str.replaceFirst(c, c.toUpperCase())
    • 단어의 첫 문자만 대문자로 바꿔야 하기때문에 replaceFirst()를 사용해준다.
    • replace 함수는 조건으로 문자열만 사용할 수 있으므로 Character.toString()을 사용해 char 형식에서 String 으로 변환해준다.
import java.util.StringTokenizer;

class Solution {
    public String solution(String s) {
        StringBuffer answer = new StringBuffer();
        StringTokenizer st = new StringTokenizer(s.toLowerCase(), " " ,true);
        
        while(st.hasMoreTokens()) {
            String str = st.nextToken();
            String c = Character.toString(str.charAt(0));
            str = str.replaceFirst(c, c.toUpperCase());
            answer.append(str);
        }
        
        return answer.toString();
    }
}

profile
오늘을 살고 내일을 꿈꾸는 낭만주의자

0개의 댓글