class Solution {
public String solution(String s) {
String answer = "";
String[] str = s.split("");
StringBuilder sb = new StringBuilder();
int cnt = 0; // 순서 카운트할 변수 생성
for(int i = 0; i < str.length; i++){
cnt = str[i].contains(" ") ? 0 : cnt + 1; // 공백(띄어쓰기) 포함하고 있으면 0으로 다시 셋팅
if(cnt % 2 == 0){
sb.append(str[i].toLowerCase());
}else{
sb.append(str[i].toUpperCase());
}
}
answer = sb.toString();
return answer;
}
}
1.
class Solution {
public String solution(String s) {
String answer = "";
boolean switching = true;
for(int i=0; i<s.length(); i++){
if(s.charAt(i)==' '){ //charAt 함수: 문자열에서 특정 위치의 문자가 무엇인지 리턴
switching=true; // 공백이면 flag를 true로 두고 초기화 셋팅
answer += " ";
}else{
String temp=""+s.charAt(i);
if(switching){
answer+=temp.toUpperCase();
}else{
answer+=temp.toLowerCase();
}
switching = !switching;
}
}
return answer;
}
}
2.
class Solution {
public String solution(String s) {
String answer = "";
int cnt = 0;
String[] array = s.split("");
for(String ss : array) {
cnt = ss.contains(" ") ? 0 : cnt + 1;
answer += cnt%2 == 0 ? ss.toLowerCase() : ss.toUpperCase(); // 삼항연산자 사용
}
return answer;
}
}
💬 공백 만나면 순서 초기화하는 변수 생성
💬 flag로 순서 초기화하는 방법도 있다.
✔ String api 확인(charAt)