20210728) 문자열 - 유저입력 input()

0

JAVA

목록 보기
9/71

스캐너 이해
입력은 Scanner 클래스를 사용한다. ctrl + shift + o
Scanner scanner = new Scanner(System.in);
스캐너 객체 생성 . 스캐너 선언

System.out.print("온도를 입력해 주세요 : ");
int x = scanner.nextInt();
이 스캐너가 사용자의 정수 입력을 받음 . 정수 x 선언
숫자를 치고 엔터를 쳐야 얘가 입력을 받음

System.out.println(x); // 입력 받은 x를 출력

섭씨를 화씨로 변환 (0˚C * 9/5) +32 = 32˚F
입력은 Scanner 클래스를 사용한다. ctrl + shift + o
Scanner scanner = new Scanner(System.in);
System.out.print("온도를 입력해 주세요 : ");

double celsius = scanner.nextDouble();
double fahrenheit = (celsius * 9 / 5) + 32; // 화씨

예제) printf를 사용해서 위의 섭씨온도와 화씨온도를
소수점 1자리로 반올림하여 출력되도록 수정한다.

내가 쓴 답
System.out.printf("섭씨 %.1f", celsius ) ;
System.out.printf("는 화씨 %.1f",fahrenheit );
System.out.print("이다.");

System.out.printf("섭씨 %.2f는 화씨 %.2f이다.", celsius, fahrenheit);

scanner.close(); // 스캐너를 닫아줌

선생님 답
Scanner scanner = new Scanner(System.in);
// 스캐너 객체 생성 . 스캐너 선언

System.out.print("온도를 입력해 주세요 : ");

// 섭씨를 화씨로 변환 (0˚C 9/5) +32 = 32˚F
double celsius = scanner.nextDouble();
double fahrenheit = (celsius
9/5) + 32; // 화씨

System.out.printf("섭씨 %.1f", celsius ) ;
System.out.printf("는 화씨 %.1f" ,fahrenheit );
System.out.print("이다.");

scanner.close(); // 스캐너를 닫아줌

Tip) Scanner 클래스

  • 읽은 바이트를 문자, 정수, 실수, 불린, 문자열 등 다양한 타입으로 변환하여 리턴하는 클래스
  • java.util.Scanner
  • Scanner는 입력되는 키 값을 공백으로 구분되는 토큰 단위로 읽는다.
  • 공백문자 '\t', '\f', '\r', ' ', '\n'
  • 개발자가 원하는 타입 값으로 쉽게 읽을 수 있다.
  • 프로그램을 실행시키고 콘솔창에 문자열을 입력하고 'Enter'를 누르면 된다.

*Scanner(스캐너) 기본 사용법
import java.util.Scanner; // 기본적으로 import문 필요
Scanner scan = new Scanner(System.in); // Scanner 객체

  • System.in을 사용하여 키보드 입력 값을 읽고
    원하는 타입으로 변환하여 리턴한다.

*System.in

  • 키보드와 연결된 자바의 표준 입력 스트림이다.
  • 입력되는 키를 바이트로 리턴하는 저수준 스트림이다.
  • System.in을 직접 사용하면 바이트를 문자나 숫자로
    변환하는 많은 어려움이 있다.

*스캐너(Scanner)의 주요 메소드

메소드 설명
String next() 다음 토큰을 문자열로 리턴
byte nextByte() 다음 토큰을 byte 타입으로 리턴
short nextShort() 다음 토큰을 shor 타입으로 리턴
int nextInt() 다음 토큰을 int 타입으로 리턴
long nextLong() 다음 토큰을 long 타입으로 리턴
float nextFloat() 다음 토큰을 float 타입으로 리턴
double nextDouble() 다음 토큰을 double 타입으로 리턴
String nextLine() '\n'을 포함하는 한 라인을 읽고 '\n'을 버린 나머지만 리턴
void clse() Scanner의 사용 종료
boolean hasNext() 현재 입력된 토큰이 있으면 true, 아니면 새로운 입력이 들어올 때까지 무한정 기다려서, 새로운 입력이 들어오면 그 때 true리턴, ctrl + z 키가 입력되면 입력 끝이므로 false 리턴

0개의 댓글

관련 채용 정보