상세 컨텐츠

본문 제목

[JAVA] Scanner

IT/JAVA

by o_zeew 2024. 2. 21. 16:23

본문

24.02.21 6일차

목차

1. Scanner

 

수업목표

1. 연산자의 종류

2. 제어문 (조건문, 반복문)

 


 

1. Scanner

import java.util.*;

 > import : 가져와서 사용하겠다 / java 라는 패키지를 / . 그 안에 있는 / util / .* 모든 클래스

 

Scanner s = new Scanner(System.in);

 > Scanner : Class명, 변수형

    s : 인스턴스명, 객체(object), 변수

    = : 대입연산

    new : 참조형 변수를 만드는 연산자, 객체를 생성하는 기능을 갖는 명령어 (기본8형을 제외하고는 반드시 생성해야한다)

    Scanner(System.in) : 생성자, 객체를 생성할 때 사용되는 메서드

                                      (첫 글자가 대문자이지만 class명이 아님, ()소괄호 앞에 있는것은 메서드)

 

Scanner s = new Scanner(System.in);

PrintfTest pt = new PrintfTest();

int a =10;

boolean b = true;

 

* 생성자는 class명과 동일해야함

생성자는 반환 메서드를 사용하지 않음

생성자는 보통 보안상의 이유로 public을 사용하지 않음

 

*메소드 안에 또 다른 메소드는 생성 불가

객체가 생성되어 대입 된 모습

 

ScannerTest(int x) 정수를 받는 스캐너로 설정하면 아래의 new ScannerTest();와는 다른것이 됨

정수를 대입해주면 됨

, : 여러개를 가져올 때

 

* 위쪽의 ScannerTest(int x, int y) : 구조

  아래쪽의 ScannerTest(x:1, y:2) : 위의 구조를 사용한 것

 

2. Scanner 실습1

1) 현재 작성된 ScannerTest의 생성자 매개변수의 유형을 문자열(String)을 두개 받을 수 있는 구조로 변경하고,

2) 객제 st를 생성하는 부분을 변경된 생성자에 맞게 수정하시오.

 

3. Scanner 실습2

1) Scanner를 사용하여 이름과 주소를 입력받아 ScannerTest의 생성자로 전달하여 출력하는 프로그램

 * src 안에 Scanner이 존재하지 않기 때문에 Scanner 라는 클래스를 찾지 못하는 오류

 

 util에서 가져다 쓰라는 설정을 해주면 해결되지만 복잡해질 수 있음

java안에 util에서 가져다 쓰라는 설정

 

class가 선언되기 전에 import 명령어로 컴파일 할 때 참조할 폴더를 설정해준다 (반드시 class 선언 전 위치여야함)

 

터미널 창에서 입력받기 전까지 커서가 깜빡 거린다

 - nextLine : 엔터를 칠  때까지 커서가 깜빡이며 입력을 기다리는 명령어

 

입력받을 변수의 값을 변경해준다

실행시 커서가 뜬다

name에 해당하는 변수를 입력하면 다음줄에 커서가 생긴다

 

모든 값을 입력하면 

 

입력값을 받을 때 안내될 출력 명령어를 입력한다

입력값을 받을 때 같이 출력된다

 

출력 완료

 

* Inlay Hint 설정 해제

설정 - Settings
Inlay Hints를 none으로 설정

 

* int num = integer.parseInt("10"); //10

  double d = Double.parseDouble("3.14"); //3.14

 

4. Scanner 실습3 [ScannerScore.java]

1) 키보드를 통해 문자열로 되어있는 성적(국어, 영어, 수학)이 입력되었을 때 이를 정수 형태로 바꾸어 저장하고,

2) 총점(tot), 평균(avg)를 계산하여 성적과 함께 출력하시오.

 

* 프로그램을 짤 때는 설계 먼저!

 

1. Scanner가 들어있는 폴더 안내하기

2. 키보드로 입력받을 수 있는 구조 만들기

3. 키보드로 점수 받기

라벨을 먼저 찍은 후 점수 입력(순서 중요)

4. 문자열을 정수로 변환

5. 총점과 평균 (평균을 구할 때 /3을 하면 소수점이 나올 수 있기 때문에 총점과 평균 모두 double로 캐스팅)

  - tot과 3 중 하나라도 실수여야하기 때문에 /3.0으로 설정

6. 위에서 입력받은 것을 출력하기

정수 : %d, 실수 : %f

관련글 더보기