자바/자바 입문 공부일지

자바 기초 공부 일지 19. 콘솔 입력(Scanner 클래스)

Tomitom 2022. 10. 28. 17:21
반응형

 

이전에 파이썬에서는 변수에 입력을 할 때 입력 콘솔로 input() 을 사용했습니다. 

https://blue-dot.tistory.com/9

 

파이썬 공부일지 7. 변수와 입력!

변수는 변할 수 있는 모든 자료를 의미합니다. 모든 자료형의 값을 저장할 수 있습니다. 변수는 값을 저장하기 위해 이름을 지어서 사용하는 이름표예요. 식별자(이름표) 만드는 규칙을 한 번 더

blue-dot.tistory.com

 

자바에는 Scanner 이라고 하는 입력 콘솔이 있는데 이 클래스의 사용에 대해서 알아볼게요. 

 

우선 자바에서 Scanner 을 사용하기 위해서는 import 로 호출을 해줘야하는데 

java.util 패키지 안에 있으므로 경로를 설정해서 호출을 해줍니다. 

 

스캐너는 기본적인 데이터 타입들 모두 Scanner 메소드를 이용해서 받을 수 있습니다. 

100 이라는 숫자가 있을 때 이것을 숫자로 받을 것인지, 문자열로 받을 것인지 입력 메소드에 따라서 다르게 받을 수 있습니다. Scanner 메소드의 사용 구문은 아래와 같습니다. 

 

 Scanner 객체명 = new Scanner(System.in);

 

예제를 확인해볼게요. 

 

package day15;
import java.util.Scanner;

public class Test06 {

		public static void main(String[] args) {
				Scanner sc = new Scanner(System.in);				
				 System.out.print("단어를 입력해주세요 : ");
			        String input = sc.next();
		        System.out.println(input);
	}
}

 

출력 값은 입력한 단어대로 호출이 됩니다.

Scanner 클래스에서 인스턴스를 생성하는 것은 인스턴스 생성은 데이터를 뽑아 올 대상과의 연결을 의미하고,

연결 후에는 데이터를 스캔하기 때문에 이름이 스캐너예요. 

 

예제를 하나 더 확인해볼게요. 

 

package day15;
import java.util.Scanner;
public class Test06 {
		public static void main(String[] args) {
			
				   Scanner sc = new Scanner(System.in);
				   int num1 = sc.nextInt();
				   int num2 = sc.nextInt();
				   int num3 = sc.nextInt();

				   int sum = num1 + num2 + num3;
				   System.out.printf("%d + %d + %d = %d \n", num1, num2, num3, sum);
				}
	}

 

숫자를 입력하면 값이 나옵니다.

 

package day15;
import java.util.Scanner;
 
스캐너 클래스를 import 로 호출합니다. 
 
 
public class Test06 {
        public static void main(String[] args) {
           
                   Scanner sc = new Scanner(System.in);
 
스캐너의 객체명은 자유롭게 설정할 수 있습니다. 
 
                   int num1 = sc.nextInt();
                   int num2 = sc.nextInt();
                   int num3 = sc.nextInt();
 
만약 입력 받고자 하는 값이 정수라면 nextInt() 메소드를 사용합니다. 
그리고 그 해당 입력 값을 int num1 의 인수에 저장할게요. 

                   int sum = num1 + num2 + num3;
                   System.out.printf("%d + %d + %d = %d \n", num1, num2, num3, sum);
                }
    }


그 다음 저장된 인수들을 모두 더하는 sum 의 값을 만듭니다. 
그리고 printf 메소드로 반환했어요. 

 

그럼 여기에서 등장한 nextInt 처럼 입력값을 받는 주요 메소드들이 어떤 것인지 확인해볼게요. 

각 데이터의 형태에 따라 작성하는 메소드가 다릅니다. 

 

● Scanner 의 주요 메소드들 

 

int     nextInt() 

byte    nextByte() 

String    nextLine()

double   nextDouble()

boolean   nextBoolean()

 

 

public static void main(String[] args) {
   Scanner sc = new Scanner(System.in);

   System.out.print("문자열 입력: ");
   String str1 = sc.nextLine();

   System.out.print("문자열 입력: ");
   String str2 = sc.nextLine();

   System.out.printf("입력된 문자열 1: %s \n", str1);
   System.out.printf("입력된 문자열 2: %s \n", str2);
}

여기까지 자바에서 입력을 담당하는 입력 콘솔 Scanner 에 대해서 알아봤습니다. ^^ 

 

 

반응형