문제 풀이 (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

+ Recent posts