ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • algorithm
    자바 알고리즘 - 대문자와 소문자
    2023. 9. 4. 12:58
    728x90

    문제 설명

    문자열 my_string이 매개변수로 주어질 때, 대문자는 소문자로 소문자는 대문자로 변환한 문자열을 return하도록 solution 함수를 완성해주세요.

     

    제한 사항

    • 1 ≤ my_string의 길이 ≤ 1,000
    • my_string은 영어 대문자와 소문자로만 구성되어 있습니다.

     

    답안

    class Solution {
        public String solution(String my_string) {
            String answer = "";
            String[] str_arr = my_string.split("");
    
            for(String str : str_arr) {
                if(str.equals(str.toUpperCase())) {
                    answer+=str.toLowerCase();
                }
                else {
                    answer+=str.toUpperCase();
                }
            }
            return answer;
        }
    }

    Char 타입에선 대,소문자 구별해주는 함수를 지원하지만 String일 땐 따로 함수가 없기 때문에 문자열을 split()으로 쪼개서 배열로 만든 다음, for문을 돌면서 각 글자를 대문자로 만들어서 문자열과 비교한다. 그리고 문자열이 대문자로 변환한 문자와 동일하다면 소문자로 바꿔주고 아니라면 대문자로 바꿔준다.

     

    참고

    • 문자열.split("구분자") : 문자열을 구분자를 이용해서 쪼개어 배열로 리턴해주는 함수. 구분자 없을 때는 한글자씩 쪼개서 저장한다.
    • 문자열.equals("비교문자") : 비교할 문자와 문자열을 비교하여 동일하면 true, 다르다면 false를 리턴해주는 함수
    • 문자열.toLowerCase() : 문자열을 소문자로 변환해주는 함수.
    • 문자열.toUpperCase() : 문자열을 대문자로 변환해주는 함수.
    728x90
Designed by Tistory.