ejyoo's 개발 노트

1001번 : A-B 본문

문제풀이/백준 입출력과 사칙연산

1001번 : A-B

ejyoovV 2021. 3. 3. 10:42

공백 단위로 주어진다!

👉🏻 2가지 입력방법을 사용하여 풀이

1) Scanner 로 입력받아 연산

2) BufferedReader로 입력받아 연산

👉🏻 방법 1) Scanner

import java.util.Scanner;
 
public class Main {
 
	public static void main(String[] args) {
		     
		Scanner in = new Scanner(System.in);
		int A = in.nextInt();
		int B = in.nextInt();
		
		System.out.println(A-B);
		
		in.close(); 
	}
}

in.close를 하는 이유는 필수는 아니지만, close로 닫아주는 것을 적극 권장한다.

리소스 누수(resource leaks)와 관련이 있다.

👉🏻 방법 2) BufferedReader

readLine()을 통해 한 행을 읽어온 뒤

공백 단위로 입력한 문자열을 분리한다.

1) String Tokenizer 클래스 이용하여 분리

  • Tokenizer은 문자열을 반환하므로 출력해야 하는 것이 int 형이기에 Integer.parseInt()로 형변환을 해주어야 한다.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
 
public class Main {
 
	public static void main(String[] args) throws IOException {
		     
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		String str = br.readLine();
		StringTokenizer st = new StringTokenizer(str," ");
		int a = Integer.parseInt(st.nextToken());
		int b = Integer.parseInt(st.nextToken());
		
		System.out.println(a-b);
		
		/*
		 
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		 
		굳이 String 변수 생성하지 않고 입력과 동시에 구분자로 분리해도 됨.
		StringTokenizer st = new StringTokenizer(br.readLine()," ");
		int a = Integer.parseInt(st.nextToken());
		int b = Integer.parseInt(st.nextToken());
		
		System.out.println(a-b);
		*/
	}
}

2) split(" ")

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
 
public class Main {
 
	public static void main(String[] args) throws IOException {
		     
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		String[] str = br.readLine().split(" ");
		int a = Integer.parseInt(str[0]);
		int b = Integer.parseInt(str[1]);
		
		System.out.println(a-b);
	}
}

'문제풀이 > 백준 입출력과 사칙연산' 카테고리의 다른 글

10172번 : 개  (0) 2021.03.03
1000번 : A+B  (0) 2021.03.03
10998번 : A X B  (0) 2021.03.03
1008번 : A/B  (0) 2021.03.03
10869번 : 사칙연산  (0) 2021.03.03