์คํฐ๋์์ ์์ ๋ฅผ ํ๋ ๋ฐ์๋ค.
โป ๋ฌธ์์ด ์ฒ๋ฆฌ ๊ณผ์ Java์์ ๋ฌธ์์ด ์ฒ๋ฆฌ์ ์์ด์,
๊ธฐ๋ณธ์ ์ผ๋ก ๋ฌธ์์ด์ ์ ๋ ฅ ๋ฐ์ ๋ ์๋ฐ์์ ๊ธฐ๋ณธ์ ์ผ๋ก ๋ฐฐ์ฐ๋ ๊ฒ์ Scanner ์ผํ ๋ฐ, BufferedReader ์ StringBuilder+ @ ๊น์ง ๋ฏธ๋ฆฌ ๊ณต๋ถํด๋ณด์๊ณ , ์ด๋ป๊ฒ ํ๊ธฐ์ ์ผ๋ก ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋๊ณผ ์ฒ๋ฆฌ ์๋๋ฅผ ์ค์๋์ง์ ๋ํด ๊ณ ๋ฏผํด๋ณด๋ ์์ ์ ๋๋ค. |
๋ฐฑ์ค 1000๋ฒ ๋ฌธ์ ์ ํจ๊ป ๊ณ ์ฐฐ์ ํด๋ณด์๋ค.
์ผ๋จ Scanner์ BufferedReader๋ ๋ค์๊ณผ ๊ฐ์ ์ฐจ์ด๊ฐ ์๋ค.
Scanner scan = new Scanner(System.in);
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
1. Scanner
nextLine() ์ ๋ฌธ์์ด์, nextInt()๋ ์ ์๋ฅผ, nextDouble() ์ ๋๋ธํ์ ์ ๋ ฅ๋ฐ๋๋ค. |
๋ฐฑ์ค 1000๋ฒ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด๋ฉด์ ์์๋ณด์.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int A = scanner.nextInt();
int B = scanner.nextInt();
System.out.println(A+B);
}
}
Scanner๋ ๊ณต๋ฐฑ(์คํ์ด์ค, ํญ, ์ค๋ฐ๊ฟ)์ ๊ธฐ์ค์ผ๋ก ์ ๋ ฅ๊ฐ์ ๊ตฌ๋ถ
→ ๋ฐ๋ก splitํ๊ฑฐ๋ ํ ํฐํ ํ ํ์ ์๋ค.
๊ทธ๋ฆฌ๊ณ ๋ฉ๋ชจ๋ฆฌ์ ์๊ฐ์ด ๋ค์๊ณผ ๊ฐ์ด ์์๊ฐ ๋์๋ค.
2. BufferedReader
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 input = br.readLine();
String[] tlist = input.split(" ");
// ์คํธ๋ง์ผ๋ก ๋ฆฌํด๊ฐ ๊ณ ์ ๋์ด์์ผ๋ฏ๋ก ๋ฐ๋์ ํ๋ณํ ํ์
int A = Integer.parseInt(tlist[0]);
int B = Integer.parseInt(tlist[1]);
System.out.println(A+B);
}
}
๋ฌธ์ ์์ A์ B๋ ๊ฐ์์ค์์ ์ ๋ ฅ์ ๋ฐ๋๋ค๊ณ ํ์ผ๋ฏ๋ก ์์ ๊ฐ์ ์ฝ๋๋ฅผ ์์ฑํด์ผ ํ๋ค.
๋ค๋ง Scanner์ ๋ค๋ฅธ์ ์
์๋์ผ๋ก ํ ํฐํ๊ฐ ์๋๊ณ ํ์ค๋ก ์ฝ์ด์ค๊ธฐ ๋๋ฌธ์, ์๋ ํ ํฐํ๋ฅผ ํด์ฃผ์ด์ผํ๋ค๋ ๊ฒ์ด๋ค.
๋ฉ๋ชจ๋ฆฌ์ ์๊ฐ์ ๋ค์๊ณผ ๊ฐ์ด ์์๋์๋ค.
๊ฒฐ๋ก : BufferedReader๊ฐ ๋ ๋นจ๋๋ค. ์ด์ ๋?
- Scanner : ๋ฐ์ดํฐ๋ฅผ ์ฝ์ผ๋ฉฐ ์ ๊ท ํํ์์ ์ฌ์ฉํด ํ์ฑํ๋ค.
- nextInt()๊ฐ ์ ๋ ฅ๊ฐ์ด ์ ์์ธ์ง ํ์ธํ๋ ๊ณผ์ ์ ํฌํจํ๋ค.
- BufferedReader :
- just ๋ฌธ์์ด ๋จ์๋ก ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ณ ๋ฐํํด ์ถ๊ฐ์ ์ธ ๋ฐ์ดํฐ ๋ถ์์ด๋ ๋ณํ์์ ์์
- ๋ฐ์ดํฐ๋ฅผ ๋ฒํผ์ ์ ์ฅํ ํ ์ฒ๋ฆฌ, ํ ๋ฒ์ ํฐ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด์์ ์ฒ๋ฆฌ ์๋๊ฐ ๋น ๋ฆ.
๋์ ๊ฒฐ๋ก
1. ๊ฐ๋จํ ์
๋ ฅ + ๋ค์ํ ์ถ๋ ฅ ํํ
→ ์๋ Scanner
- ์ถ๋ ฅ ์์ ์ด ๋ง๋ค๋ฉด StringBuilder
StringBuilderString ๊ฐ์ฒด๋ผ๋ฆฌ ๋ํ๋ ๋ฐฉ๋ฒ์ ๋ฉ๋ชจ๋ฆฌ ํ ๋น๊ณผ ํด์ ๋ฅผ ๋ฐ์์ํค๋๋ฐ, ๋ง์ ์ฐ์ฐ์ด ๋ง์์ง๋ค๋ฉด ์ฑ๋ฅ์ ์ผ๋ก ์ข์ง ์๋ค.๊ทธ๋ฅ ์ฝ๊ฐ ์ถ๋ ฅ๊ฐ ์กฐ์ ๋๋์ผ๋ก ์ฌ์ฉํ๋ค ์๊ฐํ๋ฉด ๋ ๋ฏ. ๋ฌธ์์ด์ ํจ์จ์ ์ผ๋ก ์กฐ์ํ๊ธฐ ์ํด ์ฌ์ฉ๋๋ ํด๋์ค์ด๋ค |
2. ๋ณต์กํ ์ ๋ ฅ + ์ถ๋ ฅ
→ ์๋ BufferedReader
3. ๊ฐ๋จํ ์ ๋ ฅ + ๊ฐ๋จํ ์ถ๋ ฅ
→ ์๋ ์๋๊ฐ ์ค์ํ๋ค๋ฉด BufferedReader ๊ฐ ํจ์จ์ ์ด์ง ์์๊น.
๊ทธ๊ฒ ์๋๋ผ๋ฉด ๊ฐํธํ๊ฒ Scanner๊ฐ ์ข์ง ์์๊น ํ๊ณ ์๊ฐํด๋ณธ๋ค.