본문 바로가기

Back-End/JAVA

[프로그래머스 JAVA]문자열에서 대소문자 바꿔서 출력하기

~ 목차 ~

문제

import java.util.Scanner;

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

정답

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++){
            char c = a.charAt(i);
            if(Character.isLowerCase(c)){
                result += Character.toUpperCase(c);
            }else{
                result += Character.toLowerCase(c);
            }
        }
        System.out.print(result);
    }
}

 

출력 결과

 

 

필요한 개념

  •  charAt()
    • String 타입의 데이터(문자열)에서 특정 문자를 char 타입으로 변환
  • int num = str.charAt(i) - '0';
    • Char 타입의 문자를 int 타입의 변수로 변환
  • String 클래스의 toLowerCase()와 toUpperCase() 메서드
    • toLowerCase( ) : 문자열에 포함된 모든 대문자를 소문자로 변환
    • toUpperCase( ) : 문자열에 포함된 모든 소문자를 대문자로 변환
  • Character 클래스의 toLowerCase( )와 toUpperCas( ) 메서드
    • toLowerCase( ) : 문자열에 있는 대문자를 소문자로 변환
    • toUpperCase( ) : 문자열에 있는 소문자를 대문자로 변환
public class Sample2 {
	public static void main(String[] args) {
		
		String a = "aBcDeFg";
		int b = a.length();
		
		//문자 순서대로 출력하기
	 for(int i = 0 ; i < b ; i++) {
		  char c = a.charAt(i);
		  System.out.print(c);
	  }
	 	  System.out.println(" ");
          
	  	//문자 거꾸로 출력하기
	 for(int j = b-1 ; j >= 0; j--) {
		 char d = a.charAt(j);
		  System.out.print(d);
	 }
	   
	}
}

출력 결과

//char타입 문자를 int타입으로 변환
	 String num = "12345";
	 
	  for(int i = 0 ; i < num.length(); i++ ) {
		  int n = num.charAt(i)-'0';
		  System.out.println(n);
	  }

출력

728x90