섭섭한 개발일지

[프로그래머스] 대소문자 바꿔서 출력하기 #181949 본문

프로그래밍/알고리즘

[프로그래머스] 대소문자 바꿔서 출력하기 #181949

Seop 2023. 5. 11. 09:56

url : https://school.programmers.co.kr/learn/courses/30/lessons/181949

 

 

문제 설명

 

영어 알파벳으로 이루어진 문자열 str이 주어집니다. 각 알파벳을 대문자는 소문자로 소문자는 대문자로 변환해서 출력하는 코드를 작성해 보세요.

 

 

 

제한 사항

 

1 ≤ str의 길이 ≤ 20,
str은 알파벳으로 이루어진 문자열입니다.

 

 

 

입출력 예시

 

 

입력 #1

 

aBcDeFg

 

 

출력 #1

AbCdEfG

 

 

 

풀이

 

대소문자를 변환하는 방법은 받은 문자열을 char[] 배열로 변경한다음 각 char의 값을 비교하여 소문자면 -32 대문자면 +32를 하는 방식도 있으나 가독성이 떨어져 보이므로 Character class에 있는 함수들을 사용

 

 

 

코드

 

public class Solution {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String a = sc.next();
        
        char[] chars = a.toCharArray();

        for (char ch : chars) {
            if (Character.isUpperCase(ch)) {
                System.out.print(Character.toLowerCase(ch));
            } else {
                System.out.print(Character.toUpperCase(ch));
            }
        }
    }
}

 

 

 

Comments