1. 程式人生 > >Java中Scanner的使用

Java中Scanner的使用

Constructor Summary(摘要)
Constructor and Description(建構函式和說明)                                                  charsetName為指定編碼方式
(File source)           掃描器 (檔案源) 構造一個新掃描器, 它生成從指定檔案掃描的值。
          掃描器 (FileRef 源) 構造一個新的掃描器, 它生成從指定檔案掃描的值。
          構造一個新的掃描程式, 該掃描器生成從指定檔案掃描的值。
(File source, String
 charsetName)
          構造一個新的掃描程式, 該掃描器生成從指定檔案掃描的值。
          構造一個新的掃描程式, 該掃描器生成從指定的輸入流中掃描的值。
        構造一個新的掃描程式, 該掃描器生成從指定的輸入流中掃描的值。
           構造一個新的掃描程式, 該掃描器生成從指定源掃描的值
         構造一個新的掃描程式, 該掃描器生成從指定字串掃描的值。

Method Summary(摘要)
Modifier修飾符 and Type   Method and Descriptionpattern 模式類      delimiter 分隔符radix 基數(指定進位制)
 void close()          關閉此掃描器。
          嘗試查詢匹配指定字串模式的下一項, 忽略分隔符。
          嘗試查詢從指定字串構造的模式的下一個匹配項, 忽略分隔符。
 boolean          如果此掃描器的輸入中有下一個標記, 則返回 true。
 boolean           如果存在下一個標記與指定的模式匹配, 則返回 true。
 boolean            如果下一個標記與從指定字串構造的模式匹配, 則返回 true。
 boolean           如果此掃描器輸入中的下一個標記可以使用 nextBigDecimal () 方法解釋為 BigDecimal, 則返回 true。
 boolean        如果此掃描器輸入中的下一個標記可以被解釋為使用 nextBigInteger () 方法的預設基數中的 BigInteger, 則返回 true。
 boolean         如果此掃描器輸入中的下一個標記可以使用 nextBigInteger () 方法將其解釋為指定基數中的 BigInteger, 則返回 true。  
 boolean            如果此掃描器輸入中的下一個標記可以使用"true | false" 建立解釋為布林值, 則返回 true。
 boolean           Returns true if the next token in this scanner's input can be interpreted as a byte value in the default radix using the nextByte() method.
 boolean           Returns true if the next token in this scanner's input can be interpreted as a byte value in the specified radix using the nextByte() method.
 boolean           Returns true if the next token in this scanner's input can be interpreted as a double value using the nextDouble() method.
 boolean           Returns true if the next token in this scanner's input can be interpreted as a float value using the nextFloat() method.
 boolean           Returns true if the next token in this scanner's input can be interpreted as an int value in the default radix using the nextInt() method.
 boolean           Returns true if the next token in this scanner's input can be interpreted as an int value in the specified radix using the nextInt() method.
 boolean           Returns true if there is another line in the input of this scanner.
 boolean           Returns true if the next token in this scanner's input can be interpreted as a long value in the default radix using the nextLong() method.
 boolean           Returns true if the next token in this scanner's input can be interpreted as a long value in the specified radix using the nextLong() method.
 boolean           Returns true if the next token in this scanner's input can be interpreted as a short value in the default radix using the nextShort() method.
 boolean           Returns true if the next token in this scanner's input can be interpreted as a short value in the specified radix using the nextShort() method.
          Returns the IOException last thrown by this Scanner's underlying Readable.
match()           返回此掃描器上次執行掃描操作所匹配的結果。
next()            返回此掃描器的下一個標記。
next(Pattern pattern)           如果匹配到指定模式中符合設定模式的, 則返回下一個標記。
next(String pattern)           如果匹配到指定字串中符合設定模式的, 則返回下一個標記。
 boolean           將輸入的下一個標記作為bool型別掃描。
 byte           將輸入的下一個標記作為位元組掃描。
 byte         將輸入的下一個標記作為位元組掃描。
 double          將輸入的下一個標記作為雙精度掃描。
 float          將輸入的下一個標記作為雙精度掃描。
 int           將輸入的下一個標記作為整數掃描。
 int           將輸入的下一個標記作為整數掃描。
          將此掃描器向前推進, 並返回已跳過的字元。
 long           將輸入的下一個標記作為長整數掃描。
 long           將輸入的下一個標記作為長整數掃描。
 short           將輸入的下一個標記作為短整數掃描。
 short           輸入的下一個標記作為短整數掃描。
 int radix()            返回此掃描器的預設基數。
 void            迭代器的實現不支援移除操作。
reset()           重啟掃描器
skip(Pattern pattern)            跳過與指定模式匹配的輸入, 忽略分隔符。
skip(String pattern)           跳過與指定字串匹配的輸入
          將此掃描器的預設基數設定為指定基數。

含有 radix的為指定進位制,含有pattern的為模式串 ,使用delimiter為指定分隔符 ,locate為指定下標。

方法nextByte()、nextShort()、nextInt()、nextLong()、nextFloat()、nextDouble()、next()等都稱為標記讀取方法(token-reading method),因為它們會讀取用分隔符分隔開的標記。預設情況下,分隔符是空格。

方法next()和nextLine()都會讀取一個字串。next()方法讀取一個由分隔符分隔的字串,但是nextLine()讀取一個以換行符結束的行。

標記讀取方法不能讀取標記後面的分隔符。

如果在標記讀取方法之後呼叫nextLIne(),該方法讀取從這個分隔符開始,到這行的行分隔符結束的字元。這個行分隔符也被讀取,但是它不是nextLIne()返回的字串部分。