νλ‘κ·Έλ¨μ μ¬μ©νλ€ λ³΄λ©΄ μ¬μ©μ μ λ ₯μ λ°λ κ²½μ°κ° λ§λ€.
cμΈμ΄λ javaμ κ²½μ° μ¬μ©μ μ λ ₯μ λ°μ λ, λ²νΌ(buffer)λΌλ λ μμ κ°μ μμλ‘ μ μ₯ν΄λμλ€κ° νλ²μ λ³μμ μ μ₯νλλ° μ«μμ λ¬Έμκ° λ€λ₯΄κ² λμν΄μ μ΄μν μλν λ°μ λ€λ₯΄κ² λκΈ°λ νλ€.
βΆ λ²νΌ(buffer)μ μ΄ν΄
μΌλ¨, μ λ²νΌλΌλ κ²μ΄ μ‘΄μ¬νλμ§λΆν° μμμΌν κ² κ°λ€.
μ»΄ν¨ν°μ λ°λΌ λ€λ₯΄κ² μ§λ§ μΌλ°μ μΈ μ»΄ν¨ν°(κ°μ μ©)λ 1μ΄μ μ½ 8μ² ~ 1μ΅ λ² μ λμ μ°μ°μ μ²λ¦¬ν μ μλ€κ³ νλ€.
λ§μ½, μ»΄ν¨ν°κ° μ¬μ©μμκ² μ 보λ₯Ό μ λ ₯ λ°μμΌν λ, μ°λ¦¬κ° μ 보λ₯Ό λͺ¨λ μ λ ₯νκΈ°λ₯Ό κΈ°λ€λ €μΌ νλ€λ©΄, μ°λ¦¬κ° 1 / 1μ΅ μ΄ μμ νλμ κ°μ μ λ ₯νμ§ μλ ν μ»΄ν¨ν°λ κ·Έλμ κ³μ λκΈ°νκ³ μμ΄μΌ νλ€.
CPUμ μ₯μμλ μν°μ§λ μΌμ΄ μλ μ μμ κ²μ΄λ€. κ·Έλμ λ±μ₯ν κ²μ΄ "λ²νΌ"λΌλ κ°λ μ΄λΌκ³ νλ€.
μ΄λ€ λ³μμ μ¬μ©μ μ λ ₯ κ°μ μ μ₯ν λ, νλνλ μ°¨λ‘λ‘ μ μ₯νλ κ²μ΄ μλ μμλ‘ λ²νΌμ μ μ₯ν΄ λμλ€κ° λͺ¨λ μ λ ₯μ΄ μλ£λλ©΄(μ¬μ©μκ° μν°ν€λ₯Ό λλ¦) ν λ²μ λ³μμ μ μ₯μν€λ κ²μ΄λ€. μ λ ₯μ νλ κ·Έ μ¬μ΄μ¬μ΄ μκ°μ μ»΄ν¨ν°λ λ€λ₯Έ μΌμ νκ³ μμ μ μλ€.
ν€λ³΄λλ‘ 'WOW'λΌλ λ¬Έμλ₯Ό μ¬μ©μμκ² μ λ ₯ λ°λλ€κ³ κ°μ νμ.
μ¬μ©μκ° ν€λ³΄λλ₯Ό μ λ ₯ν λ λ§λ€ λ²νΌμλ λ¬Έμκ° νλμ© μμ΄κΈ° μμνλ€.
↓λ²νΌμ μν λ³ν
ν€λ³΄λ 'W' μ λ ₯ | W | |||
λ€μ μ λ ₯ κ°μ΄ μμ λκΉμ§ μ»΄ν¨ν°λ λ€λ₯Έ μμ μ μ²λ¦¬... | ||||
ν€λ³΄λ 'O' μ λ ₯ | W | O | ||
λ€μ μ λ ₯ κ°μ΄ μμ λκΉμ§ μ»΄ν¨ν°λ λ€λ₯Έ μμ μ μ²λ¦¬... | ||||
ν€λ³΄λ 'W' μ λ ₯ | W | O | W | |
λ€μ μ λ ₯ κ°μ΄ μμ λκΉμ§ μ»΄ν¨ν°λ λ€λ₯Έ μμ μ μ²λ¦¬... | ||||
ν€λ³΄λ 'Enter' μ λ ₯ | W | O | W | \n |
μ¬μ©μ μ λ ₯ μ’ λ£ |
μ¬μ©μκ° μν°ν€λ₯Ό λλ₯΄λ μκ°, μ λ ₯μ΄ λλ κ²μΌλ‘ κ°μ£Όνκ³ λ²νΌμλ μν°λ₯Ό ν¬ν¨ν΄μ μ°¨λ‘λ‘ WOW\nκ° λ¨κ² λλ€.
(\nλ μ»΄ν¨ν°μμ ν μ€ λκΈ°, enterλ₯Ό μλ―Ένλ€.)
κ·Έ ν μ°λ¦¬κ° λ³μλ₯Ό μ μ₯νλ€λ©΄, λ²νΌμ λ¨μμλ κ°λ€μ κ°μ Έμ μ μ₯νλ€.
ex).
>>>Scanner sc = new Scanner(System.in);
>>>String wow = sc.nextLine(); // μ¬μ©μ μ λ ₯μΌλ‘ WOW μ μ₯
wowλΌλ λ¬Έμμ΄ λ³μμ 'WOW' μ μ₯
βΆ nextInt()μ nextLine()
λ²νΌμ νΉμ§ λλ¬Έμ nextInt() λ©μλλ₯Ό μ¬μ©ν΄μ μ μ κ°μ μ λ ₯ν λ, μ£Όμν΄μΌ ν μ μ΄ μκΈ΄λ€.
nextInt() λ©μλλ λ²νΌμ λ¨μμλ μ°μλ μ«μλ§ λ¦¬ν΄νλ€.
κ°λ¨ν μλ₯Ό λ€μ΄λ³΄λ©΄
>>> int num = sc.nextInt();
κ° μ€ν λμμ λ, μ¬μ©μ μ λ ₯μ 123μΌλ‘ κ°μ ν΄λ³΄μ μ΄λ, λ²νΌμ μνλ μλμ κ°λ€.
↓λ²νΌμ μν λ³ν
ν€λ³΄λ 1 μ λ ₯ | 1 | |||
λ€μ μ λ ₯ κ°μ΄ μμ λκΉμ§ μ»΄ν¨ν°λ λ€λ₯Έ μμ μ μ²λ¦¬... | ||||
ν€λ³΄λ 2 μ λ ₯ | 1 | 2 | ||
λ€μ μ λ ₯ κ°μ΄ μμ λκΉμ§ μ»΄ν¨ν°λ λ€λ₯Έ μμ μ μ²λ¦¬... | ||||
ν€λ³΄λ 3 μ λ ₯ | 1 | 2 | 3 | |
λ€μ μ λ ₯ κ°μ΄ μμ λκΉμ§ μ»΄ν¨ν°λ λ€λ₯Έ μμ μ μ²λ¦¬... | ||||
ν€λ³΄λ 'Enter' μ λ ₯ | 1 | 2 | 3 | \n |
μ¬μ©μ μ λ ₯ μ’ λ£ |
μ¬μ©μ μ λ ₯μ΄ μ’ λ£λλ©΄, μ΄μ λ²νΌμ κ°λ€μ μ°¨λ‘λ‘ κ°μ Έμ μ μΈλ λ³μ numμ μ μ₯νλ€.
μ΄λ, nextInt() λ©μλ μ체λ μ°μλ λ²νΈλ§ μ μ₯νκΈ° λλ¬Έμ enter κ°μΈ \nμ λ§λλ©΄ λ μ΄μ λ²νΌμμ κ°μ κ°μ Έμ€μ§ μλλ€.
μ¦, 123λ§ λ²νΌμμ κ°μ Έμ€κ³ \nμ λ¨κ²¨λλ€.
----μ΅μ’ μν
num == 123
↓νμ¬ λ²νΌμ μν : \nμ΄ λ¨μμλ€.
\n |
nextInt() λ©μλλ§ μ¬μ©νλ©΄ ν° λ¬Έμ κ° μμ΄ λ³΄μ΄μ§λ§ λ¬Έμμ΄ μ λ ₯μ λ°μ μ μ₯νλ nextLine()μ ν¨κ» μ¬μ©ν λ, λ¬Έμ κ° μκΈ΄λ€.
μμμ μ μ 123μ λ°μ ν λ¬Έμμ΄μ μΆκ°λ‘ μ λ ₯ λ°λ ν¨μλ‘ μμ ν΄ λ³΄λ©΄ μλμ κ°λ€.
>>> int num = sc.nextInt();
>>> String str = sc.nextLine();
>>> System.out.println(num);
>>> System.out.println(str);
μμ μ¬μ©μ μ λ ₯ :
123
μλ λ°κ°μ
μμ μΆλ ₯:
123
μλ λ°κ°μ
μ€μ μΆλ ₯:
123
μ€μ λ‘ μ μ 123μ μ¬μ©μ μ λ ₯μ λ°μ ν λ¬Έμμ΄ κ°μ μ λ ₯λ°μ§ μκ³ νλ‘κ·Έλ¨μ΄ μ’ λ£λμ΄λ²λ¦°λ€.
μ΄λ nextLine() λ©μλμ νΉμ§μΈλ° nextLine()μ κ°μ κ°μ Έμ¬ λ \nμ λ§λ λκΉμ§μ λͺ¨λ κ°μ κ°μ Έμ λ³μμ μ μ₯νκ³ \nκ° μμ λ²νΌμμ λΉΌλ΄κΈ° λλ¬Έμ΄λ€.
μλ₯Ό λ€μ΄ λ²νΌμ "μλ λ°κ°μ"λΌλ κ°μ΄ λ€μ΄μμ κ²½μ°
μ )
μ | λ | /s | λ° | κ° | μ | \n |
nextLine()μ \nμ λ§λκΈ° μ κΉμ§μ κ°μ λ³μμ μ μ₯νκ³ \nλ μ κ±°νλ€.
ν)
λ²νΌκ° λΉμ΄μ§λ€.
λ€μ λμμ
>>> int num = sc.nextInt(); // 123 μ λ ₯
>>> String str = sc.nextLine();
>>> System.out.println(num);
>>> System.out.println(str);
nextInt()λ‘ μ¬μ©μ μ λ ₯ 123μ numμ μ μ₯ν ν λ²νΌμ μνλ μλμ κ°λ€.
↓νμ¬ λ²νΌμ μν : \nμ΄ λ¨μμλ€.
\n |
λ°λ‘ μ΄μ΄μ nextLine()μ΄ μ€νλλ©΄ λ²νΌμ \nμ΄ λ¨μμκΈ°μ \nκΉμ§μ κ°μ λ²νΌμμ λΉΌλ΄ μ€κ³ \nμ κΉμ§ μ΄ κ°μ strμ μ μ₯νλ€.
μ¦, strμλ μ무 κ°λ μ μ₯λμ§ μκ³ λ²νΌλ λΉμ΄μ§κ² λλ€.
λ²νΌλ λΉμ΄μ Έ μμ§ μλλ€λ©΄ μΆκ°λ‘ μ¬μ©μ μ λ ₯μ λ°μ§ μκΈ° λλ¬Έμ μ΄λ¬ν μΌμ΄ λ°μνλ€.
ν΄κ²° λ°©λ²μ μ¬λ¬ λ°©λ²μ΄ μ‘΄μ¬νλλ° strμ μ¬μ©μ μ λ ₯μ λ°κΈ° μ μ nextLine() λ©μλλ₯Ό 미리 μ¬μ©νμ¬ λ²νΌλ₯Ό λΉμ°λ λ°©μμ΄ μλ€.
ex):
>>> int num = sc.nextInt(); // 123 μ λ ₯
>>> sc.nextLine(); // λ²νΌμ λ¨μμλ \nμ κ°μ Έμ λ²νΌλ₯Ό λΉμ
>>> String str = sc.nextLine(); // μνλ λ¬Έμμ΄ μ λ ₯
>>> System.out.println(num);
>>> System.out.println(str);
CμΈμ΄μ getChar()μ μ μ¬ν λ°©μμ΄λΌκ³ ν μ μλ€.
νμ€ν Cμ javaλ μ‘°κΈ λΆνΈν λΆλΆμ΄ μκΈ°λ νμ§λ§ λ μλ‘ μ μΈ λλμ΄λΌμ μ¬λ―Έμλ€.