[Algorithm]대소문자 바꿔서 출력하기

16 Aug 2023 - juno

#algorithm  #programmers 


프로그래머스 / 문제링크 - 대소문자 바꿔서 출력하기


  1. 문제 설명
  2. 나의 풀이
  3. 다른 풀이

문제 설명

영어 알파벳으로 이루어진 문자열 str이 주어집니다.

각 알파벳을 대문자는 소문자로 소문자는 대문자로 변환해서 출력하는 코드를 작성해 보세요.


제한사항

입출력 예

입력 #1

aBcDeFg

출력 #1

AbCdEfG

나의 풀이

import java.util.Scanner;

public class Solution {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String str = sc.next();
        
        if (1<= str.length() && str.length()<=20){
            for(int i = 0; i < str.length(); i++){
                if(65 <= (int)str.charAt(i) && (int)str.charAt(i) <= 90){
                    System.out.print(Character.toLowerCase(str.charAt(i)));
                } else if(97 <= (int)str.charAt(i) && (int)str.charAt(i) <= 122){
                    System.out.print(Character.toUpperCase(str.charAt(i)));
                } else{
                    System.out.println("알파벳만 입력하세요");
                }
            }
        }
    }
}

코드 설명

헤맷던점

성능요약


다른 풀이

import java.util.*;

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

        //Stack <Character> stack = new Stack <> ();

        for(Character c : a.toCharArray()){
            if(Character.isUpperCase(c)){
                //stack.push(Character.toLowerCase(c));
                answer += Character.toLowerCase(c);
            }
            else if(Character.isLowerCase(c)){
                //stack.push(Character.toUpperCase(c));
                answer += Character.toUpperCase(c);
            }
        } 
        System.out.println(answer);
    }
}

코드 설명

성능 요약


import java.util.Scanner;

public class Solution {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String a = sc.next();
        for(int i=0; i<a.length(); i++) {
            char c = a.charAt(i);
            if(Character.isUpperCase(c)) {
                System.out.print((char)(c+32));
            }
            else {
                System.out.print((char)(c-32));
            }
        }
    }
}

코드설명

성능 요약


reference

프로그래머스 다른사람풀이