쉽게 배우는 자바 프로그래밍(우종정) 프로그래밍 문제 풀이 2장 - 5번

2019. 10. 12. 19:25쉽게 배우는 자바 프로그래밍

쉽게 배우는 자바 프로그래밍 - 프로그래밍 문제 2장 5번

 

처음에 임의의 소문자로 초기화된 char 타입 변수 c라 해서 내가 직접 'e'로 지정한 뒤 했더니 그게 아니라 입력받아야 한다고 하셨다.

랜덤으로 돌려야 하나 싶었지만 아직 배우지 않았기에 지정만 했더니 점수 깎였다....

 

바로 직통으로 char을 받을 순 없고, Scanner 통해서 char을 받아야 한다.

즉 string으로 입력 받은 후 char로 빼오는 방법을 포함했다.

char c = in.next().charAt(0);

이 코드는 가장 첫번째 자리만 빼오는 것이다. 그 외에도 다양한 방법(공백 제거 후 받기 등)이 있다.

import java.util.Scanner;
public class Main
{
	public static void main(String[] args) {
	    
	    Scanner in = new Scanner(System.in);
		System.out.print("알파벳을 입력하세요 : ");
		//입력받고 첫번째 char 꺼내기
		char c = in.next().charAt(0);
		
        //대문자와 소문자의 정수 값 차이는 'A' - 'a'만큼 ->68
		char c1 = (char)(c + ((int)'A' - (int)'a'));
		
		System.out.printf("%s" , c1);
		
	    
	}
}

단순명료할수록 좋은 코드라던데 내껀 빙 둘러 가는 느낌이 든다.

그래도 뭐^^