본문 바로가기

알고리즘, 자료구조

[프로그래머스 | 코딩 기초 트레이닝 Lv.0 | JAVA] 대소문자 바꿔서 출력하기

출처 - 프로그래머스

1. 문제목적

 해당 문제는 Character 함수에 대해 알 수 있습니다.

2. 필요개념

Character 함수 

  • isDigit(): 주어진 문자가 숫자인지 여부를 확인합니다.
  • isLetter(): 주어진 문자가 알파벳 문자인지 여부를 확인합니다.
  • isUpperCase() / isLowerCase(): 주어진 문자가 대문자/소문자인지 여부를 확인합니다.
  • toUpperCase() / toLowerCase(): 주어진 문자를 대문자로 변환 또는 소문자로 변환합니다.
  • isWhitespace(): 주어진 문자가 공백 문자인지 여부를 확인합니다.

3. 코드작성

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 b = a.charAt(i); 
            
            if(Character.isLowerCase(b)){        
                answer += Character.toUpperCase(b);
            } else {
                answer += Character.toLowerCase(b);
            }
        }
        System.out.println(answer);
    }
}

4. 문제풀이

  • char b = a.charAt(i); - 문자열 a의 현재 인덱스 i에 해당하는 문자를 추출하여 char b에 저장합니다.
  • if(Character.isLowerCase(b)) - 추출한 문자 b가 소문자인지 확인합니다.
  • 만약 소문자라면, Character.toUpperCase(b)를 통해 해당 문자를 대문자로 변환하고, 변환된 문자를 answer에 추가합니다.
  • 그렇지 않으면 (대문자인 경우), Character.toLowerCase(b)를 통해 해당 문자를 소문자로 변환하고, 변환된 문자를 answer에 추가합니다.
  • answer += ...; - answer에 변환된 문자를 추가하는 부분입니다. += 연산자를 사용하여 현재까지의 결과에 변환된 문자를 이어붙입니다.

5. 다른방법 

6. 마무리

   Charater함수 사용시 Character.함수(char타입의 변수) 형태로 사용해야하는 부분을 주의해야 했습니다.

7. 문제링크

코딩테스트 연습 > 코딩기초트레이닝 > 자바 > 대소문자 바꿔서 출력하기

 

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