코딩테스트/프로그래머스

[Lv.0] 대소문자 바꿔서 출력하기

민톨이 2024. 7. 19. 21:07
728x90

📋 문제

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

 

📋 입출력 예시

 

📋 풀이

import java.util.Scanner;

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

        for(int i = 0; i< a.length();i++){
            char c = a.charAt(i);
            if(Character.isUpperCase(c)){
                answer += Character.toLowerCase(c);
            } else{
                answer += Character.toUpperCase(c);
            }
        }
        System.out.println(answer);
    }
    
}

 

모르는 메서드 투성이라 그냥 100퍼센트 참고해서 복붙한 수준.

 

1. 답 담을 String answer 선언

2. for문으로 a.length 돌아가면서 검사

3. if 조건문으로 대문자인지 else(소문자)인지 검사하면서 반대로 바꿔서 대입

4. 출력

 

📌 charAt(index) 

ex) String a = "Hello World"
char c = "";
c = a.charAt(0) <- index : 0
System.out.println(c)
=====> 출력 : "H"

 

=> char타입의 변수 c를 선언하고 변수 c에 a.charAt(0)값을 저장함

 

 

📌 Character.isUpperCase()

입력받은 알파벳이 대문자인지 소문자인지 구분. 대문자면 true / 소문자면 false 리턴

 

 

📌 toLowerCase() / toUpperCase()

입력받은 알파벳을 소문자/대문자로 변경