- [Java] 17. 콘솔에서 입력 받기 : Scanner 클래스2024년 04월 15일
- Song hyun
- 작성자
- 2024.04.15.:02
728x90반응형[Java] 콘솔에서 입력 받기
1. Scanner 사용하기
콘솔에서 읽는 것은 System.in을 사용한다.
System.in은 바이트 코드(이진 코드)를 읽어, 우리에게 전달해준다.
이 바이트를 우리가 직접 해석하여, 정수-실수로 변환할 수도 있지만, 너무 번거롭다.
Scanner를 이용하면 보다 편리하게 콘솔에서 입력을 받을 수 있다.
(1) Scanner: Scanner 클래스는 자바 애플리케이션이 사용자로부터 쉽게 정수, 문자열 등의 변수를 받을 수 있게
자바 패키지에서 제공하는 클래스이다. 이 Scanner 클래스는 java.util에 들어있다.
-우리는 Scanner 클래스를 사용하기 위해, 컴파일러에게 어디에서 Scanner 클래스를 찾을 것인지 알려줘야 한다.
이 역할을 하는 것이 바로 import문인 것이다.
-자바에서 모든 클래스는 사용하기 전, import문을 통해 그 위치를 컴파일러에게 알려주어야 한다.
아래와 같이 Scanner 클래스를 사용해,
사용자로부터 입력받은 값 x,y, 그리고 그 둘을 합해 변수 sum에 대입하여 출력해보자.
import java.util.Scanner; //Scanner 클래스를 포함시킨다. Scanner sc = new Scanner(System.in); //Scanner 클래스의 객체를 생성시킨다.
연습 문제 1.
변수 x,y를 선언하고,
두 변수에 각각 사용자가 입력한 값을 대입한 뒤,
두 변수를 합한 값을 출력하시오.
풀이 과정:
풀이 과정은 아래와 같다.
(1) Scanner 클래스를 import문을 통해 불러와 포함시킨다.
(2) 받아온 Scanner문을 차례대로 정수형 변수 x, y에 대입시킨다.(next.In)
(3) 선언한 정수형 변수 sum에 x+y를 대입시키고, System.out.print를 통해 출력한다.
package Java04; import java.util.Scanner; public class page65 { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int x,y,sum; System.out.println("첫번째 숫자를 입력하시오:"); x=sc.nextInt(); System.out.println("두번째 숫자를 입력하시오:"); y=sc.nextInt(); sum=x+y; System.out.println(sum); } }
연습 문제 2.
import-Scanner를 이용해 사용자로부터 정수를 입력받고,
해당 정수(초)를 분으로 변환했을 때, 몇 분 몇 초인지를 알려주는 계산기를 만드시오.
풀이 과정:
풀이 과정은 다음과 같다.
(1) import java.util.Scanner를 통해 Scanner 클래스를 불러오기 한다.
(2) system.out.print를 통해 사용자에게 안내메세지를 출력해, 초(=변수 time)를 입력하게 한다.
(3) 불러온 Scanner를 정수형 변수 time에 대입시킨다.
(4) 정수형 변수 sec에는 입력받은 초를 60으로 나누게 하고(=분), 정수형 변수 min에는 그 나머지를 할당받게 한다.(=초)
(5) 각각의 변수를 스크립트 내부에 입력해, 총 몇 분 몇 초인지 출력하게 하면 완성이다.
package Java04; import java.util.Scanner; public class page70 { public static void main(String[] args) { Scanner sc=new Scanner(System.in); System.out.println("초를 입력하시오. : "); int time=sc.nextInt(); int sec=(time%60); int min=(time/60); System.out.println(time + "초는" + min + "분" + sec + "초입니다."); } }
728x90반응형'Java > 기본 개념 및 클래스' 카테고리의 다른 글
[Java] 17. 함수와 메서드 (0) 2024.04.15 [Java] 16. 이중 for문: 별 그리기 문제 (0) 2024.04.15 [Java] 16. 흐름 제어문 return, break, continue (0) 2024.04.12 [Java] 15. 반복문 while (0) 2024.04.12 [Java] 14. 반복문 for (0) 2024.04.12 다음글이전글이전 글이 없습니다.댓글