โ ๋ฌธ์
Scanner scan = new Scanner(System.in);
int i = scan.nextInt(); // 1)
String s = scan.nextLine(); // 2)
์ด๋ ๊ฒ ์ฌ์ฉํ๋ฉด int๋ง ๋ฐ์์ค๊ณ nextLine์ ๊ทธ๋ฅ ๊ฑด๋๋ฐ๊ฒ ๋๋ ์ค๋ฅ๊ฐ ๋ฐ์ํ๊ฒ ๋ ๊ฒ์ด๋ค.
nextInt()์์ Enter๋ฅผ ์น ๋ ๋ฐ์ํ๋ '๊ฐํ๋ฌธ์'๋ฅผ ์ฒ๋ฆฌํ์ง ์๊ณ ๋ฒํผ์ ๋จ๊ธฐ๊ธฐ ๋๋ฌธ์ด๋ค.
Scanner์ ์๋ ๊ฐํ๋ฌธ์ \r\n์ ๋น์์ฃผ์ด์ผ ํ๋ค.
์ด์์ฒด์ ๋ณ ๊ฐํ๋ฌธ์๋ฅผ ์ง์ ํ๋ ๋ฌธ์์ด์ด ๋ค๋ฅธ๋ฐ ์๋๋ฅผ ์ฐธ๊ณ ํ๋ฉด ๋๋ค.
โ ์ด์์ฒด์ ๋ณ ๊ฐํ๋ฌธ์(์ค ๋ฐ๊ฟ)
LF(Line-Feed)
- Mac, Linux (Unix ๊ณ์ด) ์ค ๋ฐ๊ฟ ๋ฌธ์์ด = \n
- ASCII ์ฝ๋ = 10
- ์ปค์ ์์น๋ ๊ทธ๋๋ก ๋๊ณ ์ข ์ด์ ํ๋ผ์ธ ์๋ก ์ฌ๋ฆฌ๋ ๋์
- ํ์ฌ ์์น์์ ๋ฐ๋ก ์๋๋ก ์ด๋
- ์ข ์ด๋ฅผ ํ ์นธ ์ฌ๋ฆฌ๊ธฐ
CR(Carriage-Return)
- Mac ์ด๊ธฐ ๋ชจ๋ธ ์ค ๋ฐ๊ฟ ๋ฌธ์์ด = \r
- ASCII ์ฝ๋ = 13
- ์ปค์ ์์น๋ฅผ ๋งจ ์์ผ๋ก ์ฎ๊ธฐ๋ ๋์
- ์ปค์ ์์น๋ฅผ ์์ผ๋ก ์ด๋
CRLF (Carriage-Return+Line-Feed)
- Windows, DOS ์ค ๋ฐ๊ฟ ๋ฌธ์์ด = \r\n
- CR(\r) + LR(\n) ๋ ๋์์ ํฉ์ณ์ (\r\n)
- ์ปค์๋ฅผ ๋ค์๋ผ์ธ ๋งจ ์์ผ๋ก ์ฎ๊ฒจ์ฃผ๋ ๋์
โ ํด๊ฒฐ๋ฐฉ๋ฒ
1. ์ฒซ ๋ฒ์งธ ๋ฐฉ๋ฒ
scan.nextLine();
2. ๋ ๋ฒ์งธ ๋ฐฉ๋ฒ
scan.skip("[\\r\\n]+");
๋ ๊ฐ์ง ๋ฐฉ๋ฒ ์ค ํ๋๋ฅผ ์ฌ์ฉํ๋ฉด ๋๋ค.
์์
Scanner scan = new Scanner(System.in);
int i = scan.nextInt(); // 1)
//๋ฐฉ๋ฒ 1
scan.nextLine();
String s = scan.nextLine(); // 2)
------------------------------------------
Scanner scan = new Scanner(System.in);
int i = scan.nextInt(); // 1)
//๋ฐฉ๋ฒ2
scan.skip("[\\r\\n]+");
String s = scan.nextLine(); // 2)
'IT > ๐จError๐จ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Issue] ์ปดํจํฐ ๋ฉ๋ชจ๋ฆฌ ๋์ ํด๊ฒฐ ๋ฐฉ๋ฒ (2) | 2024.06.03 |
---|