Solution 1) 내 풀이
class Solution {
    public String solution(String myString) {
        char[] tmp = myString.toCharArray();
        
        for (int i = 0; i < tmp.length; i++) {
            if (tmp[i] == 'a') {
                tmp[i] = 'A';
            } else if (tmp[i] != 'A' && (int)tmp[i] >= 65 && (int)tmp[i] <= 90) {
                tmp[i] = (char)(tmp[i] + 32);
            } else {
                continue;
            }
        }
        return new String(tmp);
    }
}
Solution 2) 다른 사람의 풀이
class Solution {

    public String solution(String myString) {
        myString = myString.toLowerCase();
        myString = myString.replace('a', 'A');

        return myString;
    }
}
코드 및 문제 리뷰

문자열 myString에서 소문자 'a '는 대문자 'A'로 변환하고 다른 대문자 알파벳은 모두 소문자로 변환하는 문제이다.

 

나는 조건 그대로 예외 없이 반복문에 녹였다. 그리고 다른 사람의 풀이를 보니 이와 같다.

모두 소문자로 변환한 뒤 'a'만 'A'로 재변환한다.

 

replace도 흔한 메소드지만 사용을 않다보니 떠올리지 못하는 것 같다. 최대한 경험해야겠다.

 

 

+ Recent posts