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();
}
}
2.BufferedReader
readLine() 을 통해 입력 받아 연산하는 방법 두 가지를 설명할 것이다.
readLine() 은 한 행을 전부 읽기 때문에 공백단위로 입력해 준 문자열을 공백단위로 분리해주어야 문제를 풀 수 있을 것이다.
문자열 분리 방법 두 가지로 풀어보자.
- StringTokenizer 클래스를 이용하여 분리해주는 방법
- split() 을 이용하는 방법
그리고 반드시 자료형 타입을 잘 보아야 한다.
st.nextToken() 은 문자열을 반환하니 Integer.parseInt()로 int 형으로 변환시켜준다.
// 방법 2-1
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
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);
/*
굳이 String 변수 생성 안하고 입력과 동시에 구분자로 분리해줘도 된다.
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine()," ");
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
System.out.println(a-b);
*/
}
}
// 방법 2-2
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
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);
}
}
'백준 BAEKJOON' 카테고리의 다른 글
[백준] 10869번 사칙연산 출력하기 - JAVA (0) | 2023.01.27 |
---|---|
[백준] 1008번 A / B - JAVA (0) | 2023.01.26 |
[백준] 10998번 A X B 출력하기 - JAVA (0) | 2023.01.26 |
[백준] 1000번 A + B 출력하기 - JAVA (0) | 2023.01.26 |
[백준] 2557번 Hello World 출력하기 - JAVA (0) | 2023.01.26 |