Notice
Recent Posts
Recent Comments
Link
개발 무지렁이
[Java] Scanner클래스와 버퍼의 개행문자 본문
적은 양의 데이터를 가볍게 받아서 처리할 때 (java.util.Scanner)
nextInt(), next()
nextLine()
❗ nextInt(), next() 다음에 nextLine()을 하면?
버퍼에 남아있는 개행문자를 nextLine()이 바로 읽어버린다.
버퍼에 남아있는 개행문자를 nextLine()이 바로 읽어버린다.
import java.util.Scanner;
public class ScannerAndNextLineTest {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("이름: ");
sc.next();
System.out.print("나이: ");
sc.nextInt();
System.out.print("주소: ");
sc.nextLine(); // \n이 입력되어 바로 넘어간다
System.out.println("end..");
}
}
📖 해결방법
: sc.nextLine();로 개행문자를 비운다.
: sc.nextLine();로 개행문자를 비운다.
import java.util.Scanner;
public class ScannerAndNextLineTest {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("이름: ");
sc.next();
System.out.print("나이: ");
sc.nextInt();
//개행문자 비우기
sc.nextLine();
System.out.print("주소: ");
sc.nextLine(); // 버퍼에 개행문자를 비웠으므로 입력할 수 있다
System.out.println("end..");
}
}
'Backend > 자바' 카테고리의 다른 글
[Java] method와 method 호출방법 (0) | 2023.03.12 |
---|---|
[Java] String과 StringBuilder (0) | 2023.03.12 |
[Java] 텍스트 파일 읽기 (0) | 2023.03.12 |
[Java] System의 내장 메서드 currentTimeMillis()와 nanoTime() (0) | 2023.03.12 |
[Java] 1바이트, 1문자, 多문자 읽기 (0) | 2023.03.11 |
Comments