Java中Scanner類的使用

2021-06-26 00:21:22 字數 1527 閱讀 5758

scanner是乙個可以使用正規表示式來解析基本型別和字串的簡單文字掃瞄器。

scanner使用分隔符模式將其輸入分解為標記,預設情況下該分隔符模式與空白匹配。然後可以使用不同的 next 方法將得到的標記轉換為不同型別的值。

例如,以下**使使用者能夠從 system.in 中讀取乙個數

scanner sc = new scanner(system.in);

int i = sc.nextint();

再看乙個例子,以下**使long型別可以通過mynumber檔案中的項分配:

scanner sc = new scanner(new file("mynumbers"));

while (sc.hasnextlong())

掃瞄器還可以使用不同於空白的分隔符,下面是從乙個字串讀取若干項的例子

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();

輸出為: 12

redblue

以下**使用正規表示式同時解析所有的 4 個標記,並可以產生與上例相同的輸出結果:

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();

掃瞄器所使用的預設空白分隔符通過character.iswhitespace來識別。不管以前是否更改,reset()方法將把掃瞄器分隔符的值重置為預設空白分隔符。

掃瞄操作可能被阻塞,而等待資訊的輸入。 

最常用的乙個scanner方式就是讀取鍵盤的輸入,此時的構造方法為:

scanner scan=new scanner(system.in);
然後就可以使用scan.nextint()之類的函式來獲得鍵盤的輸入了。

JAVA常見類(二 Scanner類

scanner主要用於獲取鍵盤輸入的內容。scanner類有很多種構造方法,一般用於輸入的話則是scanner inputstream source 所需引數為inputstream,如果想獲取鍵盤輸入的內容,則需要選擇system類的靜態成員變數 system.in。它的描述是 標準 輸入流,是乙...

034 java常用類 Scanner類

一 string類概述及其構造方法 1 scanner類概述 jdk5以後用於獲取使用者的鍵盤輸入 2 構造方法 public scanner inputstream source 二 scanner類的成員方法 1 基本格式 1 hasnext 判斷是否還有下乙個輸入項,其中 可以是int,dou...

java中怎麼用Scanner

它是以前的stringtokenizer和matcher類之間的某種結合。由於任何資料都必須通過同一模式的捕獲組檢索或通過使用乙個索引來檢索文字的各個部分。於是可以結合使用正規表示式和從輸入流中檢索特定型別資料項的方法。這樣,除了能使用正規表示式之外,scanner類還可以任意地對字串和基本型別 如...