본문 바로가기

JAVA

[3] 입력

728x90

이번 페이지에서는 자바에 입력을 받는 방법 2가지를 알아보겠습니다.

종류는 아래와 같습니다.

1. BufferReader를 이용한 방법

2. Scanner를 이용한 방법

 

 

BufferReader를 이용한 방법

아래와 같이 입력을 하고 throws로 예외처리도 해줘야 실행됩니다.

system.in은 표준입력과 연결된 코드이며, 일반적으로 표준입력이란 키보드를 의미합니다.

readLine( )에서 멈춰서 입력을 받습니다. 받은 입력은 기본적으로 문자열로 취급되므로 숫자로 입력해도 문자열 숫자로 받습니다.

따라서, int타입의 변수에 값을 넣고 싶다면 아래처럼 한 번 변환을 해줘야 합니다.

이렇게하면, 숫자로 입력을 받을 수 있습니다.

 

입력을 위해 import를 해줘야 하는 것들이 있지만, buffer문장을 작성하면 자동으로 import됩니다.

 

 

Scanner를 이용한 방법

앞서 소개한 방법 이후에 나온 방법입니다.

new로 클래스의 변수를 생성하고, nextLine( )으로 입력을 받습니다. 문자열로 받습니다.

한가지 주의할 점은 이렇게 받고 나면, 객체.close( )로 꼭 닫아줘야 한다는 것입니다.

int형을 받을 때는 변환을 할 필요 없이 nextInt( )라는 멤버 함수를 사용해 입력받습니다.

사용을 하기 위해 import해야 하지만, 구문을 입력하면 자동으로 입력됩니다.

 

 

입력을 여러개 받기

입력을 여러 개 받기 위해서는 입력 구문을 여러 개 사용하면 됩니다. 물론 첫번째 방법의 경우에서 int형으로 여러 개를 받으려면 각각에 대해 변환을 거쳐줘야 합니다.

 

 

마치며...

2번째 방법에서 많이 간단해지기는 했지만, 여전히 다른 언어에 비하면 쓸데없이 복잡해 보입니다.

 

왜 자바의 입력방법은 이렇게 길고 복잡할까?

공부하면서 알게 될 수도 있고, 어느 순간 알게 될 수도 있지만, 현재 찾아봤을 때는, 명확하게 왜 이렇게 길게 써야하는지는 찾을 수가 없었습니다.

그나마 간략한 설명은 아래 링크와 같습니다. 결론적으로 말하자면, 이것저것 필요한 처리를 넣다보니 길어지게 되었고, BufferedReader 클래스까지 보았으나, 제 상태로는 이해를 할 수가 없었습니다... 일단은 넘어가도록 하겠습니다.

m.blog.naver.com/PostView.nhn?blogId=fb_lua&logNo=221239286135&proxyReferer=https:%2F%2Fwww.google.com%2F

 

[자바 강좌] 제 36강 콘솔 입력(Console Input)

안녕하세요. 자바 강좌중인 Falcon 입니다. 키보드는 대표적인 콘솔 입력장치이다. 따라서 이번에는 키보...

blog.naver.com

www.soen.kr/book/java/book/234.htm

 

http://www.soen.kr/book/java/book/234.htm

2-3-4.입력 프로그램은 혼자서 실행되는 것이 아니라 사용자와 끊임없이 상호작용을 한다. 명령을 받아 처리하고 주요 결정 사항에 대해 질문을 한다. 그러기 위해서는 실행중에 입력을 받아야

www.soen.kr

 

728x90

'JAVA' 카테고리의 다른 글

[5] 클래스  (0) 2021.05.17
[4] 배열  (0) 2021.05.17
[2] 변수  (0) 2021.05.10
[1] Java의 기본  (0) 2021.05.10
[0] Java 시작부터 실행까지  (0) 2021.05.09