next()와 nextLine() 모두 String 타입의 문자열을 입력받을 때, 사용한다.
Scanner sc = new Scanner(System.in);
String str1 = sc.next();
String str2 = sc.nextLine();
다음과 같이 사용하는데,
둘의 차이점은
next()를 사용할 경우,
문자열을 입력하고 스페이스바를 치기 전까지의 문자열을 입력을 받고,
nextLine()의 경우는,
문자열을 입력하고 엔터를 치기 전까지의 문자열을 모두 받는다.
다음 코드를 통해 next()와 nextLine()의 출력 결과를 확인해보자.
입력 방식의 차이는 직접 쳐봐야 알기 때문에, 코드를 직접 입력해서 진행해보시길 바랍니다.
import java.util.Scanner;
public class Main {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
System.out.print("문자열 입력 : ");
String str2 = sc.nextLine();
System.out.println("nextLine() 출력 : " + str2 + "\n");
System.out.print("문자열 입력 : ");
String str1 = sc.next();
System.out.println("next() 출력 : " + str1);
}
}
그림처럼, nextLine()의 경우는 한 줄이 끝나기 전까지의 모든 입력을 받는 반면,
next()의 경우는 띄어쓰기 전까지의 입력만 받습니다.
'Develop > Java' 카테고리의 다른 글
Java : 입출력 예외 처리 (throws IOException) (0) | 2022.09.03 |
---|---|
오버로딩(Overloading) vs 오버라이딩(Overriding) (1) | 2022.09.02 |
StringBuilder vs StringBuffer (0) | 2022.08.30 |
Java : String <-> int (0) | 2022.08.30 |
자료형 일치 (0) | 2022.08.25 |