이제 공백 문자를 만나면 toUpper 변수를 true로 설정해서 다음 만나는 알파벳이 대문자로 변환될 수 있도록 합니다.

    if (!Character.isAlphabetic(c)) {
        builder.append(c);
        toUpper = true;
    } else {
    ...

     

    1-B. 공백 문자가 아닌 경우

    else 문으로 진입한 c는 알파벳이라는 보장이 있으므로 대문자 혹은 소문자로 변환해야 합니다.

     

    1-B-i. 대·소문자 변환하여 이어 붙이기

    다음과 같이 else 문에 toUpper를 사용하여 문자의 대·소문자를 변환하고, StringBuilder 객체에 이어 붙입니다. 그리고 다음 문자의 대·소문자 여부를 변경합니다.

        if (!Character.isAlphabetic(c)) {
            builder.append(c);
        } else {
            if (toUpper) {
                builder.append(Character.toUpperCase(c));
            } else {
                builder.append(Character.toLowerCase(c));
            }
        }

     

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.