Java 자료형과 기본 입출력 예제
파일명:Ex04_입력문.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | import java.io.IOException; public class Ex04_입력문 { public static void main(String[] args) throws IOException{ // throws IOException 예외처리 코드 System.out.print("한 문자 입력하세요"); char ch = (char)System.in.read(); //A를 넣어도 아스키 코드로 받아드려서 65가 입력됨 System.in.read()는 한글자만 입력됨 //System.in.read(); //System.in.read(); //버퍼에 남은 엔터를 없애는 작업을 함 맨 앞으로 가는 \r과 한줄 밑으로 가는 \n System.in.skip(2); //skip을 쓰면 위와 같은 기능을 함 System.out.println("입력한 값:"+ch); /* ctrl+shift+/ 주석 단축키 위와 같음 int ch1 = System.in.read(); System.out.println("입력한 값:"+(char)ch1); */ int a,b; System.out.print("숫자1 : "); a = System.in.read()-48; //System.in.read()는 문자로 받아드리기 때문에 아스키코드가 출력된다 그래서 아스키코드 48을 빼줌 System.in.read(); System.in.read(); System.out.print("숫자2 : "); b = System.in.read()-'0';//문자 0을 빼줘도 됨 문자 0은 아스키코드로 48 System.out.println("a="+a+"b="+b); System.out.println("a+b="+(a+b)); System.out.println(a+"+"+b+"="+(a+b)); System.out.printf("%d + %d = %d", a, b, a+b); } } | cs |
예제 코드
결과
프로그램에 자료를 입력하는 방법에는 여러가지가 있다.
그 중에 한가지로 System.in.read();가 있다.
위 코드는 키보드를 통하여 콘솔창으로 데이터를 입력 받을 수 있다.
테이터를 입력하면 보통 엔터를 치게 되는데 문자를 출력후 엔터값이 버퍼에 남아있어 다음 입력값에 영향을 끼치게 되므로
위 코드 처럼
System.in.read();
System.in.read();
을 사용하여 엔터 값에 해당하는 맨 앞으로 가는 \r과 한줄 밑으로 가는 \n의 값을 버퍼에서 제거하거나
System.in.skip(2);
를 써서 두번 skip하면 다음 입력에 영향을 주지 않는다.
read()를 사용하면 한 문자만 입력 가능하기 때문에 문자열이나 공백이 있는 문자열은 입력이 불가능 하다는 단점이 있다.
'Programing > Java' 카테고리의 다른 글
[Java] 예제 연산자 산술 (0) | 2016.04.23 |
---|---|
[Java] 예제 자료형과 기본 입출력 입력문 Scanner (0) | 2016.04.23 |
[Java] 예제 자료형과 기본 입출력 실수형 float (0) | 2016.04.23 |
[Java] 예제 자료형과 기본 입출력 정수형, 문자형, 논려형 자료형 (0) | 2016.04.23 |
[Java] 예제 자료형과 기본 입출력 출력 print printf println (0) | 2016.04.23 |