문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요.
| s | return |
|---|---|
| "try hello world" | "TrY HeLlO WoRlD" |
class Solution {
public String solution(String s) {
String answer = "";
int idx=0;
for(int i=0; i<s.length(); i++){
if(s.charAt(i) != ' '){
if(idx++%2==0){
answer += Character.toUpperCase(s.charAt(i));
}else{
answer += Character.toLowerCase(s.charAt(i));
}
}else{
idx = 0;
answer += " ";
}
}
return answer;
}
}
공백을 기준으로 문자열을 나눠야 하나 했는데 그럴 필요 없이 charAt으로 한 문자씩 가져왔다.
공백이 대소문자 변환을 거쳐도 아무 변화가 없기 때문이다.
char 대소문자 변환 : Character.toUpperCase(ch), Character.toLowerCase(ch)
String 대소문자 변환 : str.toUpperCase(), str.toLowerCase()