문제 링크 - https://school.programmers.co.kr/learn/courses/30/lessons/12951
import java.util.*;
class Solution {
public String solution(String s) {
String answer = "";
int n = s.length();
boolean isNextUpper=false; // 다음 문자가 대문자로 와야하면 true, 소문자로 와야하면 false
for(int i=0; i<n; i++){
char cur = s.charAt(i);
if(i==0 || isNextUpper){ // 숫자는 toUpperCase 해도 그대로 숫자이다.
answer+=Character.toUpperCase(cur);
isNextUpper=false; // 한 단어에서 대문자 뒤에는 전부 소문자여야 하므로 false로 바꿔준다.
}
else
answer+=Character.toLowerCase(cur);
if(cur==' ') // 현재 char가 공백이면 그 다음문자는 대문자가 되어야하므로 isNextUpper를 true로 바꿔준다.
isNextUpper=true;
}
return answer;
}
}