>  기사  >  Java  >  Java에서 next()와 nextLine()의 차이점은 무엇입니까?

Java에서 next()와 nextLine()의 차이점은 무엇입니까?

王林
王林앞으로
2020-08-21 16:28:094624검색

Java에서 next()와 nextLine()의 차이점은 무엇입니까?

우선, Java의 Scanner 클래스에 있는 next() 및 nextLine() 메서드가 사용자 입력을 얻는 데 사용된다는 것을 알고 있습니다.

(권장 튜토리얼: Java Getting Started Tutorial)

둘의 차이점을 살펴보겠습니다.

next()는 문자 앞/뒤에 공백/Tab 키를 가져오지 않고 문자만 가져옵니다. 공백/Tab 키/Enter 키를 만날 때까지 문자 획득을 시작합니다(문자 앞뒤는 계산하지 않음). nextLine()은 문자 앞뒤의 공백/Tab 키를 획득하고 Enter 키를 만나면 종료됩니다.

예:

import java.util.Scanner;
import java.util.Vector;

public class Main{
    public static void main(String args[]) {
        Scanner reader=new Scanner(System.in);
        String s1=reader.nextLine();
        String s2=reader.next();
        System.out.println(s1);
        System.out.println(s2);
    }
}

실행 결과:

Java에서 next()와 nextLine()의 차이점은 무엇입니까?

next()는 Askldfj 문자만 얻고 공백 뒤의 모든 항목은 삭제되는 것을 볼 수 있습니다!

next()와 nextLine()의 순서를 변경하세요

import java.util.Scanner;
import java.util.Vector;

public class Main{
    public static void main(String args[]) {
        Scanner reader=new Scanner(System.in);
        String s1=reader.next();
    //    String ss=reader.nextLine();
        String s2=reader.nextLine();
        System.out.println(s1);
        System.out.println(s2);
    }
}

(추천 튜토리얼: java 강좌)

실행 예시:

Java에서 next()와 nextLine()의 차이점은 무엇입니까?

aaaa bbbb cccc만 입력하면 시스템이 자동으로 두 줄을 출력합니다:

aaaa
 bbbb cccc

aaaa뒤에 공백이 있어서 next는 필요없어서 다음읽기가 끝나고 남은 bbbbcccc는 nextLine이 집어들어요

해결책은 위 코드에서 주목하는 nextLine()을 추가하는 것

import java.util.Scanner;

public class Main {
    
    public static void main(String[] args) {
        Scanner reader=new Scanner(System.in);
        String s1=reader.next();
        String s2=reader.nextLine();
        System.out.println(s1);
        System.out.println(s2);
    }
}

실행 결과:

abcdefg abcdefg
      //剩下两行

abcdefg를 입력하면 캐리지 리턴 프로그램이 종료되고 abcdefg와 두 줄 바꿈이 출력됩니다. 이유는 nextLine이 캐리지 리턴을 흡수하기 때문입니다.

두 개의 nextLine이 서로 연결되지 않도록 주의하세요. next를 사용할 때는 이런 일이 발생하지 않습니다. 왜냐하면 next에 의해 흡수되는 첫 번째 요구 사항은 문자이고 마지막 요구 사항은 공백, Tab 키 및 Enter 키이기 때문입니다.

위 내용은 Java에서 next()와 nextLine()의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 cnblogs.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제