JavaTM Platform
Standard Ed. 6

java.util
클래스 Scanner

java.lang.Object 
  상위를 확장 java.util.Scanner
모든 구현된 인터페이스:
Iterator <String >


public final class Scanner
extends Object
implements Iterator <String >

정규 표현을 사용해 원시형 및 캐릭터 라인의 구문 분석이 가능한, 단순한 텍스트 스캐너입니다.

Scanner 는, 단락 문자의 패턴을 사용해 입력을 토큰에 분할합니다. 디폴트에서는 단락지어 문자는 공백 문자입니다. 결과적으로 얻을 수 있는 토큰은, 다양한 next 메소드를 사용해, 다른 형태의 값으로 변환할 수 있습니다.

예를 들어, 다음의 코드를 사용해,System.in 로부터의 수치의 read를 사용자에게 허가할 수 있습니다.

     Scanner sc = new Scanner(System.in);
     int i = sc.nextInt();
 

다른 예로서 다음의 코드를 사용해,myNumbers 파일내의 엔트리로부터 long 형을 할당할 수가 있습니다.

      Scanner sc = new Scanner(new File("myNumbers"));
      while (sc.hasNextLong()) {
          long aLong = sc.nextLong();
      }

스캐너는, 공백 문자 이외의 단락 문자도 사용할 수 있습니다. 다음의 예에서는, 캐릭터 라인으로부터 복수의 항목을 읽어냅니다.

     String input = "1 fish 2 fish red fish blue fish";
     Scanner s = new Scanner(input). useDelimiter("\\s*fish\\s*");
     System.out.println(s.nextInt());
     System.out.println(s.nextInt());
     System.out.println(s.next());
     System.out.println(s.next());
     s.close(); 

화면에는 다음과 같이 표시됩니다.

     1
     2
     red
     blue 

다음의 코드에서도, 같은 출력을 생성할 수 있습니다. 이 코드에서는, 4 개의 토큰을 한 번에 구문 분석 하는 정규 표현을 사용합니다.

     String input = "1 fish 2 fish red fish blue fish";
     Scanner s = new Scanner(input);
     s.findInLine("(\\d+) fish (\\d+) fish (\\w+) fish (\\w+)");
     MatchResult result = s.match();
     for (int i=1; i<=result.groupCount(); i++)
         System.out.println(result.group(i));
     s.close(); 

스캐너로 사용되는디폴트의 공백 단락 문자는,Character . isWhitespace 에 의해 인식됩니다. reset() 메소드는, 스캐너의 단락 문자가 이전으로 변경되었는지 어떠했는지에 관계없이, 그 값을 디폴트의 공백 단락 문자에 리셋 합니다.

스캔 조작에 의해, 입력의 대기를 방해할 수 있는 경우가 있습니다.

next()hasNext() 메소드 및 그 원시형의 companion 메소드 (nextInt()hasNextInt() 등)는, 최초로 단락지어 문자 패턴에 일치하는 입력을 모두 스킵 해, 다음의 토큰을 돌려주려고 합니다. hasNextnext 메소드는, 어느쪽이나 더 이상의 입력의 대기를 블록 할 수 있습니다. hasNext 메소드의 블록 기능은, 관련하는 next 메소드가 블록을 실행할지 어떨지에는 관계 없습니다.

findInLine(java.lang.String) ,findWithinHorizon(java.lang.String, int) , 및 skip(java.util.regex.Pattern) 메소드는, 단락 문자 패턴 (와)는 관계없는 것으로 동작합니다. 이러한 메소드는, 입력내의 단락 문자 (와)는 관계없는 것으로 지정된 패턴의 매칭을 시도합니다. 이 때문에, 단락 문자와 무관계한 특수한 환경에서 사용할 수 있습니다. 이러한 메소드는, 그 이상의 입력의 대기를 블록 할 수 있습니다.

스캐너가 InputMismatchException 를 throw 하면(자), 다른 메소드를 사용해 취득 또는 스킵 할 수 있도록(듯이), 스캐너는 예외의 원인이 된 토큰을 건네주지 않습니다.

단락 문자 패턴의 타입에 응해, 빈 상태(empty)의 토큰이 반환되는 일이 있습니다. 예를 들어, 패턴 「"\\s+"」는, 복수의 단락 문자 인스턴스에 일치하기 위해(때문에), 빈 상태(empty)이 아닌 토큰을 돌려줍니다. 단락 문자 패턴 「"\\s"」는, 한 번에 1 개의 공백 문자만을 건네주기 (위해)때문에, 빈 상태(empty)의 토큰을 돌려줍니다.

스캐너는,Readable 인터페이스를 구현하는 임의의 객체로부터 텍스트를 읽어낼 수가 있습니다. 기가 되는 readable 의 Readable.read(java.nio.CharBuffer) 메소드 호출이 IOException 를 throw 했을 경우, 스캐너는 입력의 마지막에 달했다고 봅니다. 기가 되는 readable 에 의해 throw 된 최신의 IOException 는,ioException() 메소드를 사용해 취득할 수 있습니다.

Scanner 가 닫혀지는 경우, 그 입력 소스가 Closeable 인터페이스를 구현하고 있으면(자), 그 소스도 닫혀집니다.

Scanner 가, 외부의 동기화를 실시하지 않고 multi-thread를 사용하는 것은 안전하지는 않습니다.

특히 명기되어 있지 않은 한,null 파라미터를 Scanner 의 몇개의 메소드에 건네주면(자),NullPointerException 가 throw 됩니다.

useRadix(int) 메소드를 사용해 다른 기수가 설정되어 있지 않은 경우, 스캐너는 수치를 10 진수로서 해석합니다. reset() 메소드는, 스캐너의 기수가 이전으로 변경되었는지 어떠했는지에 관계없이, 그 값을 10 에 리셋 합니다.

로컬라이즈의 수

이 클래스의 인스턴스는, 표준의 서식에 가세해 스캐너의 로케일의 서식에서 수치를 스캔 할 수 있습니다. 스캐너의초기 로케일은,Locale.getDefault() 메소드에 의해 반환되는 값입니다. 이것은,useLocale(java.util.Locale) 메소드를 사용해 변경할 수 있습니다. reset() 메소드는, 스캐너의 로케일이 이전으로 변경되었는지 어떠했는지에 관계없이, 그 값을 초기 로케일에 리셋 합니다.

로컬라이즈의 서식은, 다음의 파라미터로 정의됩니다. 특정의 로케일의 경우, 이것은 로케일 DecimalFormat 객체인 df, 및 그 DecimalFormatSymbols 객체인 dfs 로부터 취득됩니다.

LocalGroupSeparator   1000 위의 단락 문자. 즉,  dfs. getGroupingSeparator()
LocalDecimalSeparator   소수점에 사용하는 문자. 즉,  dfs. getDecimalSeparator()
LocalPositivePrefix   정의 수의 전에 표시하는 캐릭터 라인 (빈 상태(empty)의 경우도 있다). 즉,  df. getPositivePrefix()
LocalPositiveSuffix   정의 수의 후에 표시하는 캐릭터 라인 (빈 상태(empty)의 경우도 있다). 즉,  df. getPositiveSuffix()
LocalNegativePrefix   부의 수의 전에 표시하는 캐릭터 라인 (빈 상태(empty)의 경우도 있다). 즉,  df. getNegativePrefix()
LocalNegativeSuffix   부의 수의 후에 표시하는 캐릭터 라인 (빈 상태(empty)의 경우도 있다). 즉,  df. getNegativeSuffix()
LocalNaN   부동 소수점치가 아닌 것을 나타내는 캐릭터 라인. 즉,  dfs. getNaN()
LocalInfinity   부동 소수점치의 무한대를 나타내는 캐릭터 라인. 즉,  dfs. getInfinity()

Number syntax

이 클래스의 인스턴스가 수치로서 구문 분석 가능한 캐릭터 라인은, 다음의 정규 표현의 문법에 따라 지정됩니다. 여기서, Rmax 는, 사용중의 기수 중(안)에서 최대의 숫자입니다 (예를 들어, 기수 10 의 Rmax 는 9).

NonASCIIDigit  :: = Character.isDigit (c) 가  true 를 돌려주는 것 같은, 비 ASCII 문자 c
 
Non0Digit  :: = [1-Rmax] | NonASCIIDigit
 
Digit  :: = [0-Rmax] | NonASCIIDigit
 
GroupedNumeral  ::
= (  Non0DigitDigit? Digit?
LocalGroupSeparatorDigitDigitDigit )+ )
 
Numeral  :: = ( ( Digit+ ) | GroupedNumeral )
 
Integer  :: = ( [-+]? ( Numeral ) )
| LocalPositivePrefix NumeralLocalPositiveSuffix
| LocalNegativePrefix NumeralLocalNegativeSuffix
 
DecimalNumeral  :: = Numeral
| NumeralLocalDecimalSeparatorDigit*
| LocalDecimalSeparatorDigit+
 
Exponent  :: = ( [eE] [+-]? Digit+ )
 
Decimal  :: = ( [-+]? DecimalNumeralExponent? )
| LocalPositivePrefixDecimalNumeralLocalPositiveSuffixExponent?
| LocalNegativePrefixDecimalNumeralLocalNegativeSuffixExponent?
 
HexFloat  :: = [-+]? 0[xX][0-9a-fA-F]*\. [0-9a-fA-F]+ ([pP][-+]? [0-9]+)?
 
NonNumber  :: = NaN | LocalNan | Infinity | LocalInfinity
 
SignedNonNumber  :: = ( [-+]? NonNumber )
| LocalPositivePrefixNonNumberLocalPositiveSuffix
| LocalNegativePrefixNonNumberLocalNegativeSuffix
 
Float  :: = Decimal
| HexFloat
| SignedNonNumber

전술의 정규 표현에서는, 공백 문자는 무시됩니다.

도입된 버젼:
1.5

생성자 의 개요
Scanner (File  source)
          지정된 파일로부터 스캔 된 값을 생성하는 Scanner 를 새롭게 작성합니다.
Scanner (File  source, String  charsetName)
          지정된 파일로부터 스캔 된 값을 생성하는 Scanner 를 새롭게 작성합니다.
Scanner (InputStream  source)
          지정된 입력 스트림로부터 스캔 된 값을 생성하는 Scanner 를 새롭게 작성합니다.
Scanner (InputStream  source, String  charsetName)
          지정된 입력 스트림로부터 스캔 된 값을 생성하는 Scanner 를 새롭게 작성합니다.
Scanner (Readable  source)
          지정된 소스로부터 스캔 된 값을 생성하는 Scanner 를 새롭게 작성합니다.
Scanner (ReadableByteChannel  source)
          지정된 채널로부터 스캔 된 값을 생성하는 Scanner 를 새롭게 작성합니다.
Scanner (ReadableByteChannel  source, String  charsetName)
          지정된 채널로부터 스캔 된 값을 생성하는 Scanner 를 새롭게 작성합니다.
Scanner (String  source)
          지정된 캐릭터 라인으로부터 스캔 된 값을 생성하는 Scanner 를 새롭게 작성합니다.
 
메소드의 개요
 void close ()
          현재의 스캐너를 클로즈 합니다.
 Pattern delimiter ()
          이 Scanner 가 단락지어 문자의 매칭에 현재 사용하고 있는 Pattern 를 돌려줍니다.
 String findInLine (Pattern  pattern)
          단락 문자를 무시해, 다음에 나타나는 지정된 패턴의 검색을 시도합니다.
 String findInLine (String  pattern)
          단락 문자를 무시해, 다음에 나타나는, 지정된 캐릭터 라인으로부터 구축된 패턴의 검색을 시도합니다.
 String findWithinHorizon (Pattern  pattern, int horizon)
          다음에 나타나는 지정된 패턴의 검색을 시도합니다.
 String findWithinHorizon (String  pattern, int horizon)
          단락 문자를 무시해, 다음에 나타나는, 지정된 캐릭터 라인으로부터 구축된 패턴의 검색을 시도합니다.
 boolean hasNext ()
          이 스캐너가 입력내에 다른 토큰을 보관 유지하는 경우는 true 를 돌려줍니다.
 boolean hasNext (Pattern  pattern)
          다음의 완전한 토큰이 지정된 패턴에 일치하는 경우는 true 를 돌려줍니다.
 boolean hasNext (String  pattern)
          다음의 토큰이, 지정된 캐릭터 라인으로부터 구축된 패턴에 일치하는 경우는 true 를 돌려줍니다.
 boolean hasNextBigDecimal ()
          이 스캐너의 입력내의 다음의 토큰이,nextBigDecimal() 메소드를 사용해 BigDecimal 치로서 해석 가능한 경우에, true 를 돌려줍니다.
 boolean hasNextBigInteger ()
          이 스캐너의 입력내의 다음의 토큰이,nextBigInteger() 메소드를 사용해 디폴트의 기수의 BigInteger 치로서 해석 가능한 경우에, true 를 돌려줍니다.
 boolean hasNextBigInteger (int radix)
          토큰을 정수로서 해석하기 위해서 사용하는 기수 이 스캐너의 다음의 토큰이 유효한 BigInteger 인 경우에게만, true 이 스캐너가 클로즈 하고 있는 경우
 boolean hasNextBoolean ()
          캐릭터 라인 「true|false」로부터 작성된 대문자와 소문자의 구별되지 않는 패턴을 사용해, 스캐너의 입력내의 다음의 토큰을 boolean 치로서 해석 가능하면, true 를 돌려줍니다.
 boolean hasNextByte ()
          이 스캐너의 입력내의 다음의 토큰이,nextByte() 메소드를 사용해 디폴트의 기수의 byte 치로서 해석 가능한 경우에, true 를 돌려줍니다.
 boolean hasNextByte (int radix)
          이 스캐너의 입력내의 다음의 토큰이,nextByte() 메소드를 사용해 지정된 기수의 byte 치로서 해석 가능한 경우에, true 를 돌려줍니다.
 boolean hasNextDouble ()
          이 스캐너의 입력내의 다음의 토큰이,nextDouble() 메소드를 사용해 double 치로서 해석 가능한 경우에, true 를 돌려줍니다.
 boolean hasNextFloat ()
          이 스캐너의 입력내의 다음의 토큰이,nextFloat() 메소드를 사용해 float 치로서 해석 가능한 경우에, true 를 돌려줍니다.
 boolean hasNextInt ()
          이 스캐너의 다음의 토큰이 유효한 int 치인 경우에게만, true 이 스캐너의 다음의 토큰이 유효한 int 치인 경우에게만, true 이 스캐너가 클로즈 하고 있는 경우
 boolean hasNextInt (int radix)
          이 스캐너의 입력내의 다음의 토큰이,nextInt() 메소드를 사용해 지정된 기수의 int 치로서 해석 가능한 경우에, true 를 돌려줍니다.
 boolean hasNextLine ()
          이 스캐너의 입력에 다른 행이 있는 경우는 true 를 돌려줍니다.
 boolean hasNextLong ()
          이 스캐너의 다음의 토큰이 유효한 long 치인 경우에게만, true 이 스캐너가 클로즈 하고 있는 경우
 boolean hasNextLong (int radix)
          이 스캐너의 입력내의 다음의 토큰이,nextLong() 메소드를 사용해 지정된 기수의 long 치로서 해석 가능한 경우에, true 를 돌려줍니다.
 boolean hasNextShort ()
          이 스캐너의 다음의 토큰이 디폴트 기수에 근거하는 유효한 short 치인 경우에게만, true 이 스캐너가 클로즈 하고 있는 경우
 boolean hasNextShort (int radix)
          이 스캐너의 입력내의 다음의 토큰이,nextShort() 메소드를 사용해 지정된 기수의 short 치로서 해석 가능한 경우에, true 를 돌려줍니다.
 IOException ioException ()
          이 Scanner 의 기본으로 되는 Readable 가 마지막에 throw 한 IOException 를 돌려줍니다.
 Locale locale ()
          현재의 스캐너의 로케일을 돌려줍니다.
 MatchResult match ()
          이 스캐너가 실행한 마지막 스캔 조작의 매칭 결과를 돌려줍니다.
 String next ()
          이 스캐너로부터 다음의 완전한 토큰을 검색해 돌려줍니다.
 String next (Pattern  pattern)
          지정된 패턴에 일치하는 다음의 토큰을 돌려줍니다.
 String next (String  pattern)
          다음의 토큰이 지정된 캐릭터 라인으로부터 구축된 패턴에 일치하는 경우에게만, 그것을 돌려줍니다.
 BigDecimal nextBigDecimal ()
          입력의 다음의 토큰을 BigDecimal 로서 스캔 합니다.
 BigInteger nextBigInteger ()
          입력의 다음의 토큰을 BigInteger 로서 스캔 합니다.
 BigInteger nextBigInteger (int radix)
          입력의 다음의 토큰을 BigInteger 로서 스캔 합니다.
 boolean nextBoolean ()
          입력의 다음의 토큰을 boolean 치로서 스캔 해, 그 값을 돌려줍니다.
 byte nextByte ()
          입력의 다음의 토큰을 byte 로서 스캔 합니다.
 byte nextByte (int radix)
          입력의 다음의 토큰을 byte 로서 스캔 합니다.
 double nextDouble ()
          입력의 다음의 토큰을 double 로서 스캔 합니다.
 float nextFloat ()
          입력의 다음의 토큰을 float 로서 스캔 합니다.
 int nextInt ()
          입력의 다음의 토큰을 int 로서 스캔 합니다.
 int nextInt (int radix)
          입력의 다음의 토큰을 int 로서 스캔 합니다.
 String nextLine ()
          스캐너를 현재행의 끝에 진행해, 스킵 한 입력을 돌려줍니다.
 long nextLong ()
          입력의 다음의 토큰을 long 로서 스캔 합니다.
 long nextLong (int radix)
          입력의 다음의 토큰을 long 로서 스캔 합니다.
 short nextShort ()
          입력의 다음의 토큰을 short 로서 스캔 합니다.
 short nextShort (int radix)
          입력의 다음의 토큰을 short 로서 스캔 합니다.
 int radix ()
          현재의 스캐너의 디폴트 기수를 돌려줍니다.
 void remove ()
          Iterator 의 구현이 remove 오퍼레이션을 지원하지 않는 경우
 Scanner reset ()
          현재의 스캐너를 리셋 합니다.
 Scanner skip (Pattern  pattern)
          지정된 패턴에 일치하는 입력을, 단락 문자를 무시해 스킵 합니다.
 Scanner skip (String  pattern)
          지정된 캐릭터 라인으로 구축된 패턴에 일치하는 입력을 스킵 합니다.
 String toString ()
          이 Scanner 의 캐릭터 라인 표현을 돌려줍니다.
 Scanner useDelimiter (Pattern  pattern)
          이 스캐너의 단락 문자 패턴을, 지정된 패턴으로 설정합니다.
 Scanner useDelimiter (String  pattern)
          이 스캐너의 단락 문자 패턴을, 지정된 String 로부터 작성된 패턴으로 설정합니다.
 Scanner useLocale (Locale  locale)
          스캐너의 로케일이 지정된 로케일로 설정합니다.
 Scanner useRadix (int radix)
          스캐너의 디폴트 기수가 지정된 기수로 설정합니다.
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , wait , wait , wait
 

생성자 의 상세

Scanner

public Scanner(Readable  source)
지정된 소스로부터 스캔 된 값을 생성하는 Scanner 를 새롭게 작성합니다.

파라미터:
source - Readable 인터페이스를 구현하는 문자 소스

Scanner

public Scanner(InputStream  source)
지정된 입력 스트림로부터 스캔 된 값을 생성하는 Scanner 를 새롭게 작성합니다. 스트림로부터 취득한 바이트는, 기본으로 되는 플랫폼의 디폴트 캐릭터 세트 를 사용해 문자에 변환됩니다.

파라미터:
source - 스캔 대상의 입력 스트림

Scanner

public Scanner(InputStream  source,
               String  charsetName)
지정된 입력 스트림로부터 스캔 된 값을 생성하는 Scanner 를 새롭게 작성합니다. 스트림로부터의 바이트는, 지정된 캐릭터 세트를 사용해 문자에 변환됩니다.

파라미터:
source - 스캔 대상의 입력 스트림
charsetName - 스트림로부터의 바이트를 스캔 대상의 문자로 변환하기 위해서(때문에) 사용되는 인코딩 타입
예외:
IllegalArgumentException - 지정된 캐릭터 세트가 존재하지 않는 경우

Scanner

public Scanner(File  source)
        throws FileNotFoundException 
지정된 파일로부터 스캔 된 값을 생성하는 Scanner 를 새롭게 작성합니다. 파일로부터 취득한 바이트는, 기본으로 되는 플랫폼의 디폴트 캐릭터 세트 를 사용해 문자에 변환됩니다.

파라미터:
source - 스캔 대상의 파일
예외:
FileNotFoundException - 소스가 발견되지 않는 경우

Scanner

public Scanner(File  source,
               String  charsetName)
        throws FileNotFoundException 
지정된 파일로부터 스캔 된 값을 생성하는 Scanner 를 새롭게 작성합니다. 파일로부터 취득한 바이트는, 지정된 캐릭터 세트를 사용해 문자에 변환됩니다.

파라미터:
source - 스캔 대상의 파일
charsetName - 파일로부터 취득한 바이트를 스캔 대상의 문자로 변환할 때에 사용하는 인코딩형
예외:
FileNotFoundException - 소스가 발견되지 않는 경우
IllegalArgumentException - 지정된 인코딩이 발견되지 않는 경우

Scanner

public Scanner(String  source)
지정된 캐릭터 라인으로부터 스캔 된 값을 생성하는 Scanner 를 새롭게 작성합니다.

파라미터:
source - 스캔 하는 캐릭터 라인

Scanner

public Scanner(ReadableByteChannel  source)
지정된 채널로부터 스캔 된 값을 생성하는 Scanner 를 새롭게 작성합니다. 소스로부터 취득한 바이트는, 기본으로 되는 플랫폼의디폴트 캐릭터 세트를 사용해 문자에 변환됩니다.

파라미터:
source - 스캔 하는 채널

Scanner

public Scanner(ReadableByteChannel  source,
               String  charsetName)
지정된 채널로부터 스캔 된 값을 생성하는 Scanner 를 새롭게 작성합니다. 소스로부터 취득한 바이트는, 지정된 캐릭터 세트를 사용해 문자에 변환됩니다.

파라미터:
source - 스캔 하는 채널
charsetName - 채널로부터 취득한 바이트를 스캔 대상의 문자로 변환할 때에 사용하는 인코딩형
예외:
IllegalArgumentException - 지정된 캐릭터 세트가 존재하지 않는 경우
메소드의 상세

close

public void close()
현재의 스캐너를 클로즈 합니다.

이 스캐너가 아직 닫지 않고, 기본으로 되는 readableCloseable 인터페이스도 구현하는 경우, readable 의 close 메소드가 불려 갑니다. 이 스캐너가 벌써 닫혀지고 있는 경우, 이 메소드를 호출해도 아무것도 일어나지 않습니다.

스캐너가 클로즈 한 후에 검색 조작의 실행을 시도하면(자),IllegalStateException 가 throw 됩니다.


ioException

public IOException  ioException()
Scanner 의 기본으로 되는 Readable 가 마지막에 throw 한 IOException 를 돌려줍니다. 이런 종류의 예외가 존재하지 않는 경우, 이 메소드는 null 를 돌려줍니다.

반환값:
이 스캐너의 readable 가 마지막에 throw 한 예외

delimiter

public Pattern  delimiter()
Scanner 가 단락지어 문자의 매칭에 현재 사용하고 있는 Pattern 를 돌려줍니다.

반환값:
이 스캐너의 단락 문자 패턴

useDelimiter

public Scanner  useDelimiter(Pattern  pattern)
이 스캐너의 단락 문자 패턴을, 지정된 패턴으로 설정합니다.

파라미터:
pattern - 단락 문자 패턴
반환값:
현재의 스캐너

useDelimiter

public Scanner  useDelimiter(String  pattern)
이 스캐너의 단락 문자 패턴을, 지정된 String 로부터 작성된 패턴으로 설정합니다.

이 메소드의 useDelimiter(pattern) 형식의 호출의 동작은,useDelimiter(Pattern.compile(pattern)) 의 호출과 완전히 같게 됩니다.

reset() 메소드를 호출하면(자), 스캐너의 단락 문자가디폴트로 설정됩니다.

파라미터:
pattern - 단락 문자 패턴을 지정하는 캐릭터 라인
반환값:
현재의 스캐너

locale

public Locale  locale()
현재의 스캐너의 로케일을 돌려줍니다.

스캐너의 로케일은, 디폴트의 프리미티브(primitive) 일치 정규 표현의 다수의 요소에 영향을 미칩니다. 전술의「로컬라이즈의 수」를 참조해 주세요.

반환값:
현재의 스캐너의 로케일

useLocale

public Scanner  useLocale(Locale  locale)
스캐너의 로케일이 지정된 로케일로 설정합니다.

스캐너의 로케일은, 디폴트의 프리미티브(primitive) 일치 정규 표현의 다수의 요소에 영향을 미칩니다. 전술의「로컬라이즈의 수」를 참조해 주세요.

reset() 메소드를 호출하면(자), 스캐너의 로케일이초기 로케일로 설정됩니다.

파라미터:
locale - 사용하는 로케일을 지정하는 캐릭터 라인
반환값:
현재의 스캐너

radix

public int radix()
현재의 스캐너의 디폴트 기수를 돌려줍니다.

스캐너의 기수는, 디폴트의 수치 일치 정규 표현의 다수의 요소에 영향을 미칩니다. 전술의「로컬라이즈의 수」를 참조해 주세요.

반환값:
현재의 스캐너의 디폴트 기수

useRadix

public Scanner  useRadix(int radix)
스캐너의 디폴트 기수가 지정된 기수로 설정합니다.

스캐너의 기수는, 디폴트의 수치 일치 정규 표현의 다수의 요소에 영향을 미칩니다. 전술의「로컬라이즈의 수」를 참조해 주세요.

기수가 Character.MIN_RADIX 보다 작은지,Character.MAX_RADIX 보다 큰 경우,IllegalArgumentException 가 throw 됩니다.

reset() 메소드를 호출하면(자), 스캐너의 기수가 10 으로 설정됩니다.

파라미터:
radix - 수치의 스캔시에 사용하는 기수
반환값:
현재의 스캐너
예외:
IllegalArgumentException - 기수가 범위외에 있는 경우

match

public MatchResult  match()
이 스캐너가 실행한 마지막 스캔 조작의 매칭 결과를 돌려줍니다. 매칭이 실행되지 않았는지, 마지막 매칭이 성공하지 않았던 경우, 이 메소드는 IllegalStateException 를 throw 합니다.

Scanner 의 다양한 next 메소드는, 예외를 throw 하지 않고 처리가 완료하면(자), 매칭 결과를 사용 가능하게 합니다. 예를 들어, int 를 돌려주는 nextInt() 메소드를 호출한 후에, 이 메소드는, 먼저 정의한 Integer 정규 표현의 검색용의 MatchResult 를 돌려줍니다. 같이findInLine(java.lang.String) ,findWithinHorizon(java.lang.String, int)skip(java.util.regex.Pattern) 메소드는, 처리에 성공하면(자) 매칭을 사용 가능하게 합니다.

반환값:
마지막 매칭 조작의 결과
예외:
IllegalStateException - 매칭 결과가 사용 가능하지 않는 경우

toString

public String  toString()

Scanner 의 캐릭터 라인 표현을 돌려줍니다. Scanner 의 캐릭터 라인 표현에는, 디버그에 유용한 정보가 포함됩니다. 엄밀한 서식은 지정되지 않습니다.

오버라이드(override):
클래스 Object 내의 toString
반환값:
이 스캐너의 캐릭터 라인 표현

hasNext

public boolean hasNext()
이 스캐너가 입력내에 다른 토큰을 보관 유지하는 경우는 true 를 돌려줍니다. 이 메소드는, 입력의 스캔의 대기중에 블록을 실행할 가능성이 있습니다. 이 스캐너가 클로즈 하고 있는 경우

정의:
인터페이스 Iterator <String > 내의 hasNext
반환값:
이 스캐너가 다른 토큰을 보관 유지하는 경우에게만 true
예외:
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우
관련 항목:
Iterator

next

public String  next()
이 스캐너로부터 다음의 완전한 토큰을 검색해 돌려줍니다. 완전한 토큰의 전후에는, 단락 문자 패턴에 일치하는 입력이 배치됩니다. 이 메소드는, 전의 hasNext() 의 호출로 true 가 돌려주어졌을 경우에서도, 입력의 스캔의 대기중에 블록을 실행할 가능성이 있습니다.

정의:
인터페이스 Iterator <String > 내의 next
반환값:
다음의 토큰
예외:
NoSuchElementException - 이용 가능한 토큰이 더 이상 존재하지 않는 경우
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우
관련 항목:
Iterator

remove

public void remove()
Iterator 의 구현이 remove 오퍼레이션을 지원하지 않는 경우

정의:
인터페이스 Iterator <String > 내의 remove
예외:
UnsupportedOperationException - 이 메소드가 불려 갔을 경우
관련 항목:
Iterator

hasNext

public boolean hasNext(String  pattern)
다음의 토큰이, 지정된 캐릭터 라인으로부터 구축된 패턴에 일치하는 경우는 true 를 돌려줍니다. 이 스캐너가 클로즈 하고 있는 경우

이 메소드의 hasNext(pattern) 형식의 호출의 동작은,hasNext(Pattern.compile(pattern)) 의 호출과 완전히 같게 됩니다.

파라미터:
pattern - 스캔 하는 패턴을 지정하는 캐릭터 라인
반환값:
이 스캐너가 지정된 패턴에 일치하는 다른 토큰을 보관 유지하는 경우에게만 true
예외:
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

next

public String  next(String  pattern)
다음의 토큰이 지정된 캐릭터 라인으로부터 구축된 패턴에 일치하는 경우에게만, 그것을 돌려줍니다. 매칭에 성공하면(자), 스캐너는 패턴에 일치한 입력의 끝에 진행됩니다.

이 메소드의 next(pattern) 형식의 호출의 동작은,next(Pattern.compile(pattern)) 의 호출과 완전히 같게 됩니다.

파라미터:
pattern - 스캔 하는 패턴을 지정하는 캐릭터 라인
반환값:
다음의 토큰
예외:
NoSuchElementException - 지정된 토큰을 이용할 수 없는 경우
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

hasNext

public boolean hasNext(Pattern  pattern)
다음의 완전한 토큰이 지정된 패턴에 일치하는 경우는 true 를 돌려줍니다. 완전한 토큰의 전후에는, 단락 문자 패턴에 일치하는 입력이 배치됩니다. 이 메소드는, 입력의 대기중에 블록을 실행할 가능성이 있습니다. 이 스캐너가 클로즈 하고 있는 경우

파라미터:
pattern - 스캔 하는 패턴
반환값:
이 스캐너가 지정된 패턴에 일치하는 다른 토큰을 보관 유지하는 경우에게만 true
예외:
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

next

public String  next(Pattern  pattern)
지정된 패턴에 일치하는 다음의 토큰을 돌려줍니다. 전의 hasNext(Pattern) 의 호출이 true 를 돌려주는 경우에서도, 이 메소드는 입력의 스캔의 대기중에 블록을 실행할 가능성이 있습니다. 매칭에 성공하면(자), 스캐너는 패턴에 일치한 입력의 끝에 진행됩니다.

파라미터:
pattern - 스캔 하는 패턴
반환값:
다음의 토큰
예외:
NoSuchElementException - 이용 가능한 토큰이 더 이상 존재하지 않는 경우
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

hasNextLine

public boolean hasNextLine()
이 스캐너의 입력에 다른 행이 있는 경우는 true 를 돌려줍니다. 이 메소드는, 입력의 대기중에 블록을 실행할 가능성이 있습니다. 이 스캐너가 클로즈 하고 있는 경우

반환값:
이 스캐너가 다른 입력행을 보관 유지하는 경우에게만 true
예외:
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

nextLine

public String  nextLine()
스캐너를 현재행의 끝에 진행해, 스킵 한 입력을 돌려줍니다. 이 메소드는, 마지막 행 단락 문자를 제외한, 현재행의 나머지를 돌려줍니다. 위치는, 다음의 행의 최초로 설정됩니다.

이 메소드는 행 단락 문자의 검색을 입력내에서 속행하기 위해(때문에), 행 단락 문자가 존재하지 않는 경우, 스킵 하는 행을 검색하는 입력을 모두 버퍼 하는 일이 있습니다.

반환값:
스킵 된 행
예외:
NoSuchElementException - 행이 발견되지 않았던 경우
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

findInLine

public String  findInLine(String  pattern)
단락 문자를 무시해, 다음에 나타나는, 지정된 캐릭터 라인으로부터 구축된 패턴의 검색을 시도합니다.

이 메소드의 findInLine(pattern) 형식의 호출의 동작은,findInLine(Pattern.compile(pattern)) 의 호출과 완전히 같게 됩니다.

파라미터:
pattern - 검색하는 패턴을 지정하는 캐릭터 라인
반환값:
지정된 패턴에 일치한 텍스트
예외:
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

findInLine

public String  findInLine(Pattern  pattern)
단락 문자를 무시해, 다음에 나타나는 지정된 패턴의 검색을 시도합니다. 다음의 행 단락 문자보다 전에 패턴이 발견되었을 경우, 스캐너는 일치한 입력의 끝에 진행되어, 패턴에 일치한 캐릭터 라인을 돌려줍니다. 다음의 행 단락 문자보다 전에 해당하는 패턴이 발견되지 않았던 경우는,null 가 돌려주어져 스캐너의 위치는 변경되지 않습니다. 이 메소드는, 패턴에 일치하는 입력의 대기를 블록 하는 경우가 있습니다.

이 메소드는 지정된 패턴의 검색을 입력내에서 속행하기 위해(때문에), 행 단락 문자가 존재하지 않는 경우, 해당하는 토큰을 검색하는 입력을 모두 버퍼 하는 일이 있습니다.

파라미터:
pattern - 스캔 하는 패턴
반환값:
지정된 패턴에 일치한 텍스트
예외:
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

findWithinHorizon

public String  findWithinHorizon(String  pattern,
                                int horizon)
단락 문자를 무시해, 다음에 나타나는, 지정된 캐릭터 라인으로부터 구축된 패턴의 검색을 시도합니다.

이 메소드의 findWithinHorizon(pattern) 형식의 호출의 동작은,findWithinHorizon(Pattern.compile(pattern, horizon)) 의 호출과 완전히 같게 됩니다.

파라미터:
pattern - 검색하는 패턴을 지정하는 캐릭터 라인
반환값:
지정된 패턴에 일치한 텍스트
예외:
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우
IllegalArgumentException - horizon 가 0 보다 작은 값의 경우

findWithinHorizon

public String  findWithinHorizon(Pattern  pattern,
                                int horizon)
다음에 나타나는 지정된 패턴의 검색을 시도합니다.

이 메소드는 지정된 검색 horizon 까지 단락지어 문자를 무시해 입력내에서 행 단락 문자의 검색을 속행합니다. 패턴이 발견되었을 경우, 스캐너는 일치한 입력의 끝에 진행되어, 패턴에 일치한 캐릭터 라인을 돌려줍니다. 해당하는 패턴이 검출되지 않는 경우는, null 가 돌려주어져 스캐너의 위치는 변경되지 않습니다. 이 메소드는, 패턴에 일치하는 입력의 대기를 블록 하는 경우가 있습니다.

스캐너는, 현재 위치를 넘는 horizon 코드 포인트 이상의 검색을 결코 실행하지 않습니다. 매칭은 horizon 에 의해 클립 되는 경우가 있습니다. 즉, horizon 가 보다 큰 경우, 임의의 매칭 결과가 차이가 날 가능성이 있습니다. 스캐너는, horizon 를, 투과적이어 엥커 지정이되어 있지 않은 경계로서 취급합니다 (Matcher.useTransparentBounds(boolean)Matcher.useAnchoringBounds(boolean) 를 참조).

horizon 가 0 의 경우, horizon 는 무시되어 이 메소드는 입력내에서 지정된 패턴의 검색을 속행합니다. 패턴의 검색에는 제한이 없습니다. 또, 패턴의 검색중에 모든 입력을 버퍼 할 수 있습니다.

horizon 가 부의 경우는, IllegalArgumentException 가 throw 됩니다.

파라미터:
pattern - 스캔 하는 패턴
반환값:
지정된 패턴에 일치한 텍스트
예외:
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우
IllegalArgumentException - horizon 가 0 보다 작은 값의 경우

skip

public Scanner  skip(Pattern  pattern)
지정된 패턴에 일치하는 입력을, 단락 문자를 무시해 스킵 합니다. 지정된 패턴의 선두 일치가 성공하면(자), 이 메소드는 입력을 스킵 합니다.

현재의 위치에서 지정된 패턴에의 매칭이 발견되지 않는 경우, 입력은 스킵 되지 않고,NoSuchElementException 가 throw 됩니다.

이 메소드는, 지정된 패턴에의 매칭을 스캐너의 현재 위치로부터 검색하기 위해(때문에), 「*」과 같이 다수의 입력에 일치할 가능성이 있는 패턴을 지정하면(자), 스캐너가 대량의 입력을 버퍼 하는 경우가 있습니다.

sc.skip("[ \t]*") 와 같이, 아무것도 일치하지 않는 패턴을 사용하는 것으로,NoSuchElementException 가 throw 되는 위험을 무릅쓰는 일 없이 스킵 하는 것이 가능합니다.

파라미터:
pattern - 스킵 하는 패턴을 지정하는 캐릭터 라인
반환값:
현재의 스캐너
예외:
NoSuchElementException - 지정된 패턴이 발견되지 않는 경우
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

skip

public Scanner  skip(String  pattern)
지정된 캐릭터 라인으로 구축된 패턴에 일치하는 입력을 스킵 합니다.

이 메소드의 skip(pattern) 형식의 호출의 동작은,skip(Pattern.compile(pattern)) 의 호출과 완전히 같게 됩니다.

파라미터:
pattern - 스킵 하는 패턴을 지정하는 캐릭터 라인
반환값:
현재의 스캐너
예외:
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

hasNextBoolean

public boolean hasNextBoolean()
캐릭터 라인 「true|false」로부터 작성된 대문자와 소문자의 구별되지 않는 패턴을 사용해, 스캐너의 입력내의 다음의 토큰을 boolean 치로서 해석 가능하면, true 를 돌려줍니다. 스캐너가 일치한 입력의 끝에 진행될 것은 없습니다.

반환값:
이 스캐너의 다음의 토큰이 유효한 boolean 치인 경우에게만, true
예외:
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

nextBoolean

public boolean nextBoolean()
입력의 다음의 토큰을 boolean 치로서 스캔 해, 그 값을 돌려줍니다. 다음의 토큰을 유효한 boolean 치로 변환할 수 없는 경우, 이 메소드는 InputMismatchException 를 throw 합니다. 매칭에 성공하면(자), 스캐너는 일치한 입력의 끝에 진행됩니다.

반환값:
입력으로부터 스캔 한 boolean 치
예외:
InputMismatchException - 다음의 토큰이 유효한 boolean 치가 아닌 경우
NoSuchElementException - 스캔 하는 입력이 없어졌을 경우
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

hasNextByte

public boolean hasNextByte()
이 스캐너의 입력내의 다음의 토큰이,nextByte() 메소드를 사용해 디폴트의 기수의 byte 치로서 해석 가능한 경우에, true 를 돌려줍니다. 이 스캐너가 클로즈 하고 있는 경우

반환값:
이 스캐너의 다음의 토큰이 유효한 byte 치인 경우에게만, true
예외:
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

hasNextByte

public boolean hasNextByte(int radix)
이 스캐너의 입력내의 다음의 토큰이,nextByte() 메소드를 사용해 지정된 기수의 byte 치로서 해석 가능한 경우에, true 를 돌려줍니다. 이 스캐너가 클로즈 하고 있는 경우

파라미터:
radix - 토큰을 byte 치로서 해석하기 위해서 사용하는 기수
반환값:
이 스캐너의 다음의 토큰이 유효한 byte 치인 경우에게만, true
예외:
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

nextByte

public byte nextByte()
입력의 다음의 토큰을 byte 로서 스캔 합니다.

nextByte() 형식의 이 호출은,nextByte(radix) 의 호출과 정확하게 같은 동작이 됩니다. 여기서,radix 는 이 스캐너의 디폴트 기수입니다.

반환값:
입력으로부터 스캔 한 byte
예외:
InputMismatchException - 다음의 토큰이 Integer 정규 표현에 일치하지 않는가 범위외인 경우
NoSuchElementException - 스캔 하는 입력이 없어졌을 경우
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

nextByte

public byte nextByte(int radix)
입력의 다음의 토큰을 byte 로서 스캔 합니다. 다음에 나타내는 방법으로, 다음의 토큰을 유효한 byte 치로 변환할 수 없는 경우, 이 메소드는 InputMismatchException 를 throw 합니다. 변환에 성공하면(자), 스캐너는 일치한 입력의 끝에 진행됩니다.

다음의 토큰이 전술의 Integer 정규 표현에 일치하면(자), 로케일 고유의 접두사, 그룹 단락 문자, 및 로케일 고유의 접미사(suffix) 모든 것을 삭제하는것 같이 해 토큰이 byte 치에 변환됩니다. 다음에,Character.digit 를 사용해 비 ASCII 숫자가 ASCII 숫자에 매핑 되어 로케일 고유의 부의 접두사 및 접미사(suffix)이 존재하고 있었을 경우에는 부의 부호 (-)를 붙일 수 있어 결과적으로 얻을 수 있는 캐릭터 라인이 지정된 기수를 사용해 Byte.parseByte 에게 건네집니다.

파라미터:
radix - 토큰을 byte 치로서 해석하기 위해서 사용하는 기수
반환값:
입력으로부터 스캔 한 byte
예외:
InputMismatchException - 다음의 토큰이 Integer 정규 표현에 일치하지 않는가 범위외인 경우
NoSuchElementException - 스캔 하는 입력이 없어졌을 경우
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

hasNextShort

public boolean hasNextShort()
이 스캐너의 다음의 토큰이 디폴트 기수에 근거하는 유효한 short 치인 경우에게만, true 이 스캐너가 클로즈 하고 있는 경우

반환값:
이 스캐너의 다음의 토큰이 디폴트의 기수의 유효한 short 치인 경우에게만, true
예외:
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

hasNextShort

public boolean hasNextShort(int radix)
이 스캐너의 입력내의 다음의 토큰이,nextShort() 메소드를 사용해 지정된 기수의 short 치로서 해석 가능한 경우에, true 를 돌려줍니다. 이 스캐너가 클로즈 하고 있는 경우

파라미터:
radix - 토큰을 short 치로서 해석하기 위해서 사용하는 기수
반환값:
이 스캐너의 다음의 토큰이 지정된 기수의 유효한 short 치인 경우에게만, true
예외:
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

nextShort

public short nextShort()
입력의 다음의 토큰을 short 로서 스캔 합니다.

nextShort() 형식의 이 호출은,nextShort(radix) 의 호출과 정확하게 같은 동작이 됩니다. 여기서,radix 는 이 스캐너의 디폴트 기수입니다.

반환값:
입력으로부터 스캔 한 short
예외:
InputMismatchException - 다음의 토큰이 Integer 정규 표현에 일치하지 않는가 범위외인 경우
NoSuchElementException - 스캔 하는 입력이 없어졌을 경우
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

nextShort

public short nextShort(int radix)
입력의 다음의 토큰을 short 로서 스캔 합니다. 다음에 나타내는 방법으로, 다음의 토큰을 유효한 short 치로 변환할 수 없는 경우, 이 메소드는 InputMismatchException 를 throw 합니다. 변환에 성공하면(자), 스캐너는 일치한 입력의 끝에 진행됩니다.

다음의 토큰이 전술의 Integer 정규 표현에 일치하면(자), 로케일 고유의 접두사, 그룹 단락 문자, 및 로케일 고유의 접미사(suffix) 모든 것을 삭제하는것 같이 해 토큰이 short 치에 변환됩니다. 다음에,Character.digit 를 사용해 비 ASCII 숫자가 ASCII 숫자에 매핑 되어 로케일 고유의 부의 접두사 및 접미사(suffix)이 존재하고 있었을 경우에는 부의 부호 (-)를 붙일 수 있어 결과적으로 얻을 수 있는 캐릭터 라인이 지정된 기수를 사용해 Short.parseShort 에게 건네집니다.

파라미터:
radix - 토큰을 short 치로서 해석하기 위해서 사용하는 기수
반환값:
입력으로부터 스캔 한 short
예외:
InputMismatchException - 다음의 토큰이 Integer 정규 표현에 일치하지 않는가 범위외인 경우
NoSuchElementException - 스캔 하는 입력이 없어졌을 경우
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

hasNextInt

public boolean hasNextInt()
이 스캐너의 다음의 토큰이 유효한 int 치인 경우에게만, true 이 스캐너의 다음의 토큰이 유효한 int 치인 경우에게만, true 이 스캐너가 클로즈 하고 있는 경우

반환값:
이 스캐너의 다음의 토큰이 유효한 int 치인 경우에게만, true
예외:
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

hasNextInt

public boolean hasNextInt(int radix)
이 스캐너의 입력내의 다음의 토큰이,nextInt() 메소드를 사용해 지정된 기수의 int 치로서 해석 가능한 경우에, true 를 돌려줍니다. 이 스캐너가 클로즈 하고 있는 경우

파라미터:
radix - 토큰을 int 치로서 해석하기 위해서 사용하는 기수
반환값:
이 스캐너의 다음의 토큰이 유효한 int 치인 경우에게만, true
예외:
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

nextInt

public int nextInt()
입력의 다음의 토큰을 int 로서 스캔 합니다.

nextInt() 형식의 이 호출은,nextInt(radix) 의 호출과 정확하게 같은 동작이 됩니다. 여기서,radix 는 이 스캐너의 디폴트 기수입니다.

반환값:
입력으로부터 스캔 한 int
예외:
InputMismatchException - 다음의 토큰이 Integer 정규 표현에 일치하지 않는가 범위외인 경우
NoSuchElementException - 스캔 하는 입력이 없어졌을 경우
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

nextInt

public int nextInt(int radix)
입력의 다음의 토큰을 int 로서 스캔 합니다. 다음에 나타내는 방법으로, 다음의 토큰을 유효한 int 치로 변환할 수 없는 경우, 이 메소드는 InputMismatchException 를 throw 합니다. 변환에 성공하면(자), 스캐너는 일치한 입력의 끝에 진행됩니다.

다음의 토큰이 전술의 Integer 정규 표현에 일치하면(자), 로케일 고유의 접두사, 그룹 단락 문자, 및 로케일 고유의 접미사(suffix) 모든 것을 삭제하는것 같이 해 토큰이 int 치에 변환됩니다. 다음에,Character.digit 를 사용해 비 ASCII 숫자가 ASCII 숫자에 매핑 되어 로케일 고유의 부의 접두사 및 접미사(suffix)이 존재하고 있었을 경우에는 부의 부호 (-)를 붙일 수 있어 결과적으로 얻을 수 있는 캐릭터 라인이 지정된 기수를 사용해 Integer.parseInt 에게 건네집니다.

파라미터:
radix - 토큰을 int 치로서 해석하기 위해서 사용하는 기수
반환값:
입력으로부터 스캔 한 int
예외:
InputMismatchException - 다음의 토큰이 Integer 정규 표현에 일치하지 않는가 범위외인 경우
NoSuchElementException - 스캔 하는 입력이 없어졌을 경우
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

hasNextLong

public boolean hasNextLong()
이 스캐너의 다음의 토큰이 유효한 long 치인 경우에게만, true 이 스캐너가 클로즈 하고 있는 경우

반환값:
이 스캐너의 다음의 토큰이 유효한 long 치인 경우에게만, true
예외:
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

hasNextLong

public boolean hasNextLong(int radix)
이 스캐너의 입력내의 다음의 토큰이,nextLong() 메소드를 사용해 지정된 기수의 long 치로서 해석 가능한 경우에, true 를 돌려줍니다. 이 스캐너가 클로즈 하고 있는 경우

파라미터:
radix - 토큰을 long 치로서 해석하기 위해서 사용하는 기수
반환값:
이 스캐너의 다음의 토큰이 유효한 long 치인 경우에게만, true
예외:
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

nextLong

public long nextLong()
입력의 다음의 토큰을 long 로서 스캔 합니다.

nextLong() 형식의 이 호출은,nextLong(radix) 의 호출과 정확하게 같은 동작이 됩니다. 여기서,radix 는 이 스캐너의 디폴트 기수입니다.

반환값:
입력으로부터 스캔 한 long
예외:
InputMismatchException - 다음의 토큰이 Integer 정규 표현에 일치하지 않는가 범위외인 경우
NoSuchElementException - 스캔 하는 입력이 없어졌을 경우
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

nextLong

public long nextLong(int radix)
입력의 다음의 토큰을 long 로서 스캔 합니다. 다음에 나타내는 방법으로, 다음의 토큰을 유효한 long 치로 변환할 수 없는 경우, 이 메소드는 InputMismatchException 를 throw 합니다. 변환에 성공하면(자), 스캐너는 일치한 입력의 끝에 진행됩니다.

다음의 토큰이 전술의 Integer 정규 표현에 일치하면(자), 로케일 고유의 접두사, 그룹 단락 문자, 및 로케일 고유의 접미사(suffix) 모든 것을 삭제하는것 같이 해 토큰이 long 치에 변환됩니다. 다음에,Character.digit 를 사용해 비 ASCII 숫자가 ASCII 숫자에 매핑 되어 로케일 고유의 부의 접두사 및 접미사(suffix)이 존재하고 있었을 경우에는 부의 부호 (-)를 붙일 수 있어 결과적으로 얻을 수 있는 캐릭터 라인이 지정된 기수를 사용해 Long.parseLong 에게 건네집니다.

파라미터:
radix - 토큰을 int 치로서 해석하기 위해서 사용하는 기수
반환값:
입력으로부터 스캔 한 long
예외:
InputMismatchException - 다음의 토큰이 Integer 정규 표현에 일치하지 않는가 범위외인 경우
NoSuchElementException - 스캔 하는 입력이 없어졌을 경우
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

hasNextFloat

public boolean hasNextFloat()
이 스캐너의 입력내의 다음의 토큰이,nextFloat() 메소드를 사용해 float 치로서 해석 가능한 경우에, true 를 돌려줍니다. 이 스캐너가 클로즈 하고 있는 경우

반환값:
이 스캐너의 다음의 토큰이 유효한 float 치인 경우에게만, true
예외:
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

nextFloat

public float nextFloat()
입력의 다음의 토큰을 float 로서 스캔 합니다. 다음에 나타내는 방법으로, 다음의 토큰을 유효한 float 치로 변환할 수 없는 경우, 이 메소드는 InputMismatchException 를 throw 합니다. 변환에 성공하면(자), 스캐너는 일치한 입력의 끝에 진행됩니다.

다음의 토큰이 전술의 Float 정규 표현에 일치하면(자), 로케일 고유의 접두사, 그룹 단락 문자, 및 로케일 고유의 접미사(suffix) 모든 것을 삭제하는것 같이 해 토큰이 float 치에 변환됩니다. 다음에,Character.digit 를 사용해 비 ASCII 숫자가 ASCII 숫자에 매핑 되어 로케일 고유의 부의 접두사 및 접미사(suffix)이 존재하고 있었을 경우에는 부의 부호 (-)를 붙일 수 있어 결과적으로 얻을 수 있는 캐릭터 라인이 지정된 기수를 사용해 Float.parseFloat 에게 건네집니다. 토큰이 로컬라이즈 된 NaN 또는 무한대의 캐릭터 라인에 일치하면(자), 「NaN」또는 「Infinity」가 적당 Float.parseFloat 에게 건네집니다.

반환값:
입력으로부터 스캔 한 float
예외:
InputMismatchException - 다음의 토큰이 Float 정규 표현에 일치하지 않는가 범위외인 경우
NoSuchElementException - 스캔 하는 입력이 없어졌을 경우
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

hasNextDouble

public boolean hasNextDouble()
이 스캐너의 입력내의 다음의 토큰이,nextDouble() 메소드를 사용해 double 치로서 해석 가능한 경우에, true 를 돌려줍니다. 이 스캐너가 클로즈 하고 있는 경우

반환값:
이 스캐너의 다음의 토큰이 유효한 double 치인 경우에게만, true
예외:
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

nextDouble

public double nextDouble()
입력의 다음의 토큰을 double 로서 스캔 합니다. 다음에 나타내는 방법으로, 다음의 토큰을 유효한 double 치로 변환할 수 없는 경우, 이 메소드는 InputMismatchException 를 throw 합니다. 변환에 성공하면(자), 스캐너는 일치한 입력의 끝에 진행됩니다.

다음의 토큰이 전술의 Float 정규 표현에 일치하면(자), 로케일 고유의 접두사, 그룹 단락 문자, 및 로케일 고유의 접미사(suffix) 모든 것을 삭제하는것 같이 해 토큰이 double 치에 변환됩니다. 다음에,Character.digit 를 사용해 비 ASCII 숫자가 ASCII 숫자에 매핑 되어 로케일 고유의 부의 접두사 및 접미사(suffix)이 존재하고 있었을 경우에는 부의 부호 (-)를 붙일 수 있어 결과적으로 얻을 수 있는 캐릭터 라인이 지정된 기수를 사용해 Double.parseDouble 에게 건네집니다. 토큰이 로컬라이즈 된 NaN 또는 무한대의 캐릭터 라인에 일치하면(자), 「NaN」또는 「Infinity」가 적당 Double.parseDouble 에게 건네집니다.

반환값:
입력으로부터 스캔 한 double
예외:
InputMismatchException - 다음의 토큰이 Float 정규 표현에 일치하지 않는가 범위외인 경우
NoSuchElementException - 스캔 하는 입력이 없어졌을 경우
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

hasNextBigInteger

public boolean hasNextBigInteger()
이 스캐너의 입력내의 다음의 토큰이,nextBigInteger() 메소드를 사용해 디폴트의 기수의 BigInteger 치로서 해석 가능한 경우에, true 를 돌려줍니다. 이 스캐너가 클로즈 하고 있는 경우

반환값:
이 스캐너의 다음의 토큰이 유효한 BigInteger 인 경우에게만, true
예외:
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

hasNextBigInteger

public boolean hasNextBigInteger(int radix)
토큰을 정수로서 해석하기 위해서 사용하는 기수 이 스캐너의 다음의 토큰이 유효한 BigInteger 인 경우에게만, true 이 스캐너가 클로즈 하고 있는 경우

파라미터:
radix - 토큰을 정수로서 해석하기 위해서 사용하는 기수
반환값:
이 스캐너의 다음의 토큰이 유효한 BigInteger 인 경우에게만, true
예외:
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

nextBigInteger

public BigInteger  nextBigInteger()
입력의 다음의 토큰을 BigInteger 로서 스캔 합니다.

nextBigInteger() 형식의 이 호출은,nextBigInteger(radix) 의 호출과 정확하게 같은 동작이 됩니다. 여기서,radix 는 이 스캐너의 디폴트 기수입니다.

반환값:
입력으로부터 스캔 한 BigInteger
예외:
InputMismatchException - 다음의 토큰이 Integer 정규 표현에 일치하지 않는가 범위외인 경우
NoSuchElementException - 스캔 하는 입력이 없어졌을 경우
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

nextBigInteger

public BigInteger  nextBigInteger(int radix)
입력의 다음의 토큰을 BigInteger 로서 스캔 합니다.

다음의 토큰이 전술의 Integer 정규 표현에 일치하면(자), 모든 그룹 단락 문자를 삭제해,Character.digit 를 사용해 비 ASCII 숫자를 ASCII 숫자에 매핑 해, 지정된 기수를 사용해 결과적으로 얻을 수 있는 캐릭터 라인을 BigInteger(String, int) 생성자 에 건네주는것 같이, 토큰이 BigInteger 치에 변환됩니다.

파라미터:
radix - 토큰의 해석에 사용하는 기수
반환값:
입력으로부터 스캔 한 BigInteger
예외:
InputMismatchException - 다음의 토큰이 Integer 정규 표현에 일치하지 않는가 범위외인 경우
NoSuchElementException - 스캔 하는 입력이 없어졌을 경우
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

hasNextBigDecimal

public boolean hasNextBigDecimal()
이 스캐너의 입력내의 다음의 토큰이,nextBigDecimal() 메소드를 사용해 BigDecimal 치로서 해석 가능한 경우에, true 를 돌려줍니다. 이 스캐너가 클로즈 하고 있는 경우

반환값:
이 스캐너의 다음의 토큰이 유효한 BigDecimal 인 경우에게만, true
예외:
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

nextBigDecimal

public BigDecimal  nextBigDecimal()
입력의 다음의 토큰을 BigDecimal 로서 스캔 합니다.

다음의 토큰이 전술의 Decimal 정규 표현에 일치하면(자), 모든 그룹 단락 문자를 삭제해,Character.digit 를 사용해 비 ASCII 숫자를 ASCII 숫자에 매핑 해, 결과적으로 얻을 수 있는 캐릭터 라인을 BigDecimal(String) 생성자 에 건네주는것 같이, 토큰이 BigDecimal 치에 변환됩니다.

반환값:
입력으로부터 스캔 한 BigDecimal
예외:
InputMismatchException - 다음의 토큰이 Decimal 정규 표현에 일치하지 않는가 범위외인 경우
NoSuchElementException - 스캔 하는 입력이 없어졌을 경우
IllegalStateException - 이 스캐너가 클로즈 하고 있는 경우

reset

public Scanner  reset()
현재의 스캐너를 리셋 합니다.

스캐너를 리셋 하면(자),useDelimiter(java.util.regex.Pattern) ,useLocale(java.util.Locale) , 또는 useRadix(int) 의 호출에 의해 변경된 가능성이 있는, 모든 명시적인 상태 정보가 파기됩니다.

이 메소드를 scanner.reset() 의 형식에서 호출했을 경우, 다음의 호출과 같은 결과를 얻을 수 있습니다.

   scanner.useDelimiter("\\p{javaWhitespace}+")
          . useLocale(Locale.getDefault())
          . useRadix(10);
 

반환값:
현재의 스캐너
도입된 버젼:
1.6

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.