문제 풀이 (JAVA)
class Solution {
public String solution(String s) {
String [] str = s.split(""); // 문자열을 문자 배열로 변환하여 저장
String answer=""; // 리턴할 문자열 선언
int cnt=0; // 짝수,홀수,공백 여부를 체크할 변수 카운트 인덱스 선언
for(int i=0; i<str.length; i++){
if(str[i].equals(" ")){ // 문자가 공백이면 카운트를 0으로 선언
cnt=0;
}
else if(cnt%2==0){ // 공백 이후 문자가 짝수번째 cnt이면 대문자 변환 후 카운트 증가
str[i] = str[i].toUpperCase();
cnt++;
}
else if(cnt%2!=0){ // 공백 이후 문자가 홀수번째 cnt이면 소문자 변환 후 카운트 증가
str[i] = str[i].toLowerCase();
cnt++;
}
answer= answer + str[i];
};
return answer;
}
}
주요 핵심 포인트
1. 각 문자를 비교하여 대소문자로 변환하기 위해 split을 사용해 문자열을 문자열 배열로 저장하였다.
2. 문제의 제한 사항 중 글자별로 짝/홀수를 판별해야 하는 문구를 주의해야 하며, 글자별로 체크하기 위하여 공백 문자일때 cnt 인덱스를 0으로 선언하여 짝/홀수 인덱스 카운트를 설정해줘야 오류가 나지 않는다.
'프로그래머스(JAVA)' 카테고리의 다른 글
시저 암호 (0) | 2022.04.16 |
---|---|
약수의 합 (0) | 2022.04.16 |
자릿수 더하기 (0) | 2022.04.16 |
자연수 뒤집어 배열로 만들기 (0) | 2022.04.16 |
정수 내림차순으로 배치하기 (0) | 2022.04.16 |