본문 바로가기
백엔드개발자/알고리즘관련

문자열을 입력받아 대문자는 소문자로 소문자는 대문자로 변환하여 출력

by 보혀니 2021. 10. 2.
import java.util.Scanner;

public class Main {
	public void solution(String str) {
		String answer = "";
		for (char x : str.toCharArray()) {
			if (Character.isLowerCase(x))        
				answer += Character.toUpperCase(x);
			else
				answer += Character.toLowerCase(x);
		}        
		System.out.println(answer);
	}
//	Charater.isLowerCase : x가 소문자인지 물어보는                    
//	char x로 하나하나 소문자 인지 물어보고, 트루이면 대문자로 바꾼것을 answer에 넣는다! 누적해서 넣는다!    



//	** 아스키넘버로 풀어보기
//	대문자는 65~90 까지
//	소문자는 97~122 까지 -> 둘의 차이는 32가 난다.
//	소문자에서 32빼면 대문자가 나오겠지 
	private void solution2(String str) {
		String answer2 = "";
		for (char x: str.toCharArray()) {
			if(x>=65 && x<=90)
				answer2 += (char)(x+32);
            	else
				answer2 += (char)(x-32);
//			(char)안붙이니까 숫자로 나오더라.
		}
		System.out.println(answer2);
	}

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		String str = sc.next();
		Main T = new Main();
		T.solution(str);
		T.solution2(str);
	}

}