본문 바로가기

코딩테스트/JAVA

[코딩테스트][JAVA] 대소문자 바꿔서 출력하기

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

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

난이도 : LV0


내 풀이

import java.util.Scanner;

public class Solution {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String a = sc.next();
        
        // 결과를 저장할 변수
        String result = "";
        
        for(int i = 0; i < a.length(); i++){
        	// 문자열의 i번째 문자 추출
            char ch = a.charAt(i);
            if (Character.isUpperCase(ch)) {	// 대문자일 경우 
                result += String.valueOf(ch).toLowerCase(); 
            } else if (Character.isLowerCase(ch)) {	// 소문자일 경우
                result += String.valueOf(ch).toUpperCase(); 
            } 
        }
        System.out.println(result);        
    }
}

Java Character isUpperCase() Method : https://www.tutorialspoint.com/java/lang/character_isuppercase.htm

 

Java - Character isUpperCase() Method

Java - Character isUpperCase() Method - The Java Character isUpperCase() method determines if a character is an uppercase character or not.

www.tutorialspoint.com


다른 사람 풀이

import java.util.*;

public class Solution {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String a = sc.next();
        String answer = "";
		
        // a.toCharArray() : 문자열을 문자 배열로 변환
        // 향상된 for문
        for(Character c : a.toCharArray()){
            if(Character.isUpperCase(c)){
                answer += Character.toLowerCase(c);
            }
            else if(Character.isLowerCase(c)){
                answer += Character.toUpperCase(c);
            }
        } 
        System.out.println(answer);
    }
}

Java String toCharArray() Method : https://www.javatpoint.com/java-string-tochararray

 

Java String toCharArray() method - javatpoint

Java String toCharArray() method with method signature and examples of concat, compare, touppercase, tolowercase, trim, length, equals, split, string tochararray in java etc.

www.javatpoint.com

Java For Each Loop : https://www.w3schools.com/java/java_foreach_loop.asp

 

Java For-Each Loop

W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.

www.w3schools.com

 

For Each Loop

장점

- 가독성

 

단점

- index를 사용할 수 없음

- 배열의 값을 수정할 수 없음(== read only)