import java.util.Scanner; //Scanner ํด๋์ค import
public class Main{
public static void main(String[] args){
//๊ฐ์ฒด ์์ฑ
Scanner sc = new Scanner(System.in);
//๋ณ์ ์ ์ธ ๋ฐ ์ด๊ธฐํ
int a = sc.nextInt();
int b = sc.nextInt();
System.out.print(a+b);
sc.close();
}
}
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer; //StringTokenizer ํด๋์ค -> ๊ตฌ๋ถ์(default:๊ณต๋ฐฑ) ๊ธฐ์ค ๋ฌธ์์ด ๋ถ๋ฆฌ
public class Main {
public static void main(String[] args) throws IOException {
//๊ฐ์ฒด ์์ฑ
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.print(a+b);
br.close();
}
}
๐ก ๋ฐฑ์ค ์๊ณ ๋ฆฌ์ฆ์์๋ ํด๋์ค๋ช
์ Main์ผ๋ก ํด์ฃผ์ด์ผ ํจ!
๐ก BufferedReader๊ฐ Scanner๋ณด๋ค ์ฒ๋ฆฌ ์๋๊ฐ ๋น ๋ฆ
๐ก StringTokenizer๊ฐ split๋ณด๋ค ์ฒ๋ฆฌ ์๋๊ฐ ๋น ๋ฆ
๐ก BufferedReader ์ฌ์ฉ ์ ์์ธ์ฒ๋ฆฌ ํ์(IOException/try~catch๋ฌธ ์ฌ์ฉ)
๐ StringTokenizer(String str, ๊ตฌ๋ถ์)
โ ๋ฌธ์์ด(str)์ ๊ตฌ๋ถ์(default๊ฐ = " ")๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ถ๋ฆฌ
const fs = require('fs');
const input = fs.readFileSync('/dev/stdin').toString().split(' ');
console.log(Number(input[0]) + Number(input[1]));
//console.log(parseInt(input[0]) + parseInt(input[1]));
require('fs') โ fs ๋ชจ๋์ ๋ถ๋ฌ์ด
- fs(File System) : Node.js์ ํ์ผ ์ฒ๋ฆฌ ๊ด๋ จ ๋ด์ฅ ๋ชจ๋
- require() ๊ตฌ๋ฌธ : ๋ด์ฅ ๋ชจ๋์ ์ฌ์ฉํ๊ธฐ ์ํด ๋ถ๋ฌ์ค๋ ๊ณผ์
readFileSync('/dev/stdin') โ ํ์ค์ ๋ ฅ๊ฐ์ ๋ฐ์์ ํ์ผ์ ์ฒ๋ฆฌ
- readFile(๋น๋๊ธฐ)
- readFileSync(๋๊ธฐ) โ ์ฝ๋์ ์์ฐจ์ ์คํ, ์๊ณ ๋ฆฌ์ฆ์ ์ ํฉ
- /dev/stdin โ ๋ฐฑ์ค์์์ ์ ๋ ฅ ํ์ผ ๊ฒฝ๋ก
toString()
- fs.readFileSync๋ buffer ํ์์ผ๋ก ๋ฐํ โ ์ค๋ฅ ๋ฐ์ ๊ฐ๋ฅ์ฑ โ toString()์ ์ด์ฉํ์ฌ ๋ฌธ์์ด๋ก ๋ฐํ ํ์
split(' ')
- ๋ฌธ์์ด์ ๊ณต๋ฐฑ์ ๊ธฐ์ค์ผ๋ก ๋๋ ๋ค ๋ฐฐ์ด๋ก ๋ฐํ (data parsing)
Number()
- ๋ฌธ์์ด์ ์ซ์๋ก ๋ณํํ๋ ํจ์
- ์ซ์๋ก ๋ณํํ ์ ์๋ ๊ฐ์ธ ๊ฒฝ์ฐ NaN ๋ฐํ
๐ง ํด๋น ๋ฌธ์ ๋ฅผ ํ๋ค๊ฐ ๊ถ๊ธํด์ง Number์ parseInt์ ์ฐจ์ด์ !
const test = '2023๋
๋';
parseInt(test); // 2023
Number(test); // NaN
-parseInt๋ ๋ฌธ์์ ์ซ์๊ฐ ํผํฉ๋ ๋ฌธ์์ด์์ ์ซ์(์ ์)๋ง ๋ฝ์์ ๋ณํ
(๊ทธ๋ฌ๋ '์ 1ํญ'๊ณผ ๊ฐ์ด ๋ฌธ์์ด๋ก ์์ํ๋ ๊ฒฝ์ฐ๋ parseInt๋ NaN์ ๋ฐํ)
-Number()๋ ํด๋น ๋ฌธ์์ด์ด ์ซ์๊ฐ ์๋ ๊ฒ์ผ๋ก ์ธ์ํ์ฌ NaN์ ๋ฐํ
const test = '3.141592';
parseInt(test); // 3
Number(test); // 3.141592
-parseInt๋ ๋ฌธ์์ด ์ ์ฒด๊ฐ ์ซ์์ผ ๋ ์ ์๋ง ๋ฝ์์ ๋ณํ
-Number()๋ ์์์ ๊น์ง ๋ชจ๋ ๋ณํ
A, B = input().split() # ๋ฌธ์์ด์ input()ํจ์๋ก ์
๋ ฅ๋ฐ๊ณ split()ํจ์๋ก ๋๋์ด ๋ณ์ A,B์ ๊ฐ๊ฐ ์ ์ฅ
print(int(A)+int(B)) # int() ํจ์๋ก A์ B๋ฅผ ์ ์๋ก ๋ณํ
input() ํจ์
- ์ฌ์ฉ์๋ก๋ถํฐ ๋ฌธ์์ด์ ์ ๋ ฅ๋ฐ์ ๋ ์ฌ์ฉํ๋ ํจ์
- ์ ๋ ฅ๊ฐ์ ๋ฌธ์์ด ํํ๋ก ๋ฐํ
split() ํจ์ : ๋ฌธ์์ด์ ํน์ ๊ตฌ๋ถ์๋ฅผ ๊ธฐ์ค์ผ๋ก ๋๋๋ ํจ์
โ ๊ตฌ๋ถ์์ default ๊ฐ์ ๊ณต๋ฐฑ(" ")
int() ํจ์ : ๋ฌธ์์ด์ ์ ์ํ์ผ๋ก ๋ณํํ๋ ํจ์
A, B = map(int, input().split())
print(A+B)
map(function, iterable) : ๋ฐ๋ณต ๊ฐ๋ฅํ ์๋ฃํ(๋ฆฌ์คํธ, ํํ ๋ฑ)์ ์์๋ฅผ ํจ์์ ๋ฃ๊ณ ๋ฆฌํด๊ฐ์ผ๋ก ์๋ก์ด ๋ฆฌ์คํธ or ํํ์ ๊ตฌ์ฑํด์ฃผ๋ ํจ์