java Scanner

limchard·2023년 10월 25일
0

java

목록 보기
17/48
public static void main(String[] args) {

//스케너를 생성해서 쓰자 :
//sc : 참조변수

// Scanner는 문자열이나 숫자를 모두 키보드로 입력받으려 할때 생성해 준다.
Scanner sc = new Scanner(System.in))
// 변수
String name;
int age;
String city;

//출력(입력문)
System.out.println("이름을 입력해보세요==>");
name=sc.nextLine();//한줄을문자로 읽어온다(공백사용가능)

System.out.println("나이도 입력해 보세요==>");
//age=sc.nextInt();
// 문자, 숫자, 문자 번갈아서 쓰면 버퍼가 걸린다. 그걸 해결하기 위해서 라인을 한칸 띄어줘야 한다.
age=Integer.parseInt(sc.nextLine()); // 숫자입력과 동시에 라인도 띄어준다.
//숫자 입력후 엔터를 누르면 그 엔터가 키보드 버퍼로 저장되어서 다음문자열 읽을때 먼저 읽어버린다.
//그래서 다음문자열 읽기 전에 sc.nextLine()을 써서 띄어줘야 한다.
// 결국 문자로 쓰고 형변환으로 인트 해주면. 원문이 글자니까 버퍼 현상을 잡아준다.

System.out.println("당신이 사는 지역은?==>");
city=sc.nextLine();

// next는 라인 안내려줌, nextLine은 한줄 내려줌

//최종 출력
System.out.println("내이름은"+name+"입니다" );
System.out.println("내나이는"+age+"세 입니다" );
System.out.println("내가 사는 지역은 "+city+"입니다" );
}

Scanner에 대해 알아보자.
Scanner를 사용하는 이유는 java의 결과창(console)에 직접 값을 기입하여 결과를 도출하기 위함이다.
코드란에 변수를 직접 지정하지 않고, 실행시에 결과창에 직접 기입한다.
사용 법은 아래와 같다.

Scanner sc = new Scanner(System.in))

위의 sc는 단순히 변수 지정이고, 위와 같이 Scanner를 사용하면 기본 java util에 저장되어 있던 Scanner가 import 된다.
(System.In)을 하면 아래 console에 바로 기입이 가능하다.
이후 기입에 대한 질문에 대해 기입을 한다.(System.out.println("질문");
그리고 아래 지정된 변수에 대해 불러올 명령어를 기입힌다.
여기서 sc는 위에서 지정한 Scanner 이름이다.

name=sc.nextLine();//한줄을문자로 읽어온다(공백사용가능)

뒤에 nextLine은 줄바꿈이 포함된 것이다.
숫자의 경우 nextInt, nextDouble등 여러가지가 있다.

그리고 변수를 포함시켜 print하면 console창에 기입하도록 창이 바뀌고, 내가 console에 입력한 값이 반영되어 결과가 나온다.

주의할점은 변수의 종류가 문자, 숫자, 문자가 섞일 경우 버퍼가 걸릴 가능성이 크다.
이때는 문자로 통합하여 강제로 숫자화 시켜주면 해결된다.

age=Integer.parseInt(sc.nextLine());
profile
java를 잡아...... 하... 이게 맞나...

0개의 댓글