JAVA常見類(二 Scanner類

2021-08-21 10:57:21 字數 1067 閱讀 9769

scanner主要用於獲取鍵盤輸入的內容。

scanner類有很多種構造方法,一般用於輸入的話則是scanner(inputstream source),所需引數為inputstream,如果想獲取鍵盤輸入的內容,則需要選擇system類的靜態成員變數:system.in。它的描述是「標準」輸入流,是乙個inputstream型別的變數。格式如下:scanner sc=new scanner(system.in)。

(1)hasnext***():判斷輸入的值是否為***型的,如果為hasnext()則是判斷是否有值輸入。一般用在判斷語句或迴圈語句中。

(2)next***():用於返回鍵盤輸入的***型別的值。該方法可以使用多次,每使用一次就可以輸入並獲取一次資料,不需要再定義乙個scanner物件進行多次資料的獲取。

nextline()方法僅僅是以enter鍵為結束符,返回的是enter鍵前面的所有字元,包括空格、tab鍵等等。

next()方法結束符比nextline()多,enter鍵、空格、tab鍵都是結束符不過只

有在輸入有效字元之後,next()方法才將其後輸入的空格鍵、tab鍵

或enter鍵

等視為分隔符或結束符

。即如果一開始就輸入空格鍵、

tab鍵

或enter鍵,它是被無視。

簡單的說,就是next()方法無法獲取帶有空格、tab鍵的字串,而nextline()方法則可以。

如果第一次使用next***()獲取乙個數值,接著第二次使用nextline()獲取乙個字串,那麼第一次輸入完按下enter鍵,這個enter鍵並不像我們想像中的只代表輸入結束而消失,它實際上會把這個也當成乙個字元傳給nextline()方法,而nextline()是以enter鍵作為結束的標誌,所以會直接結束

這就會造成乙個後果:第一次輸入完後按下enter鍵程式就直接結束了,不給你輸入第二次的機會。

解決方法:將所有的型別都看成string型別獲取,最後再轉為相應型別。

034 java常用類 Scanner類

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

Java中Scanner類的使用

scanner是乙個可以使用正規表示式來解析基本型別和字串的簡單文字掃瞄器。scanner使用分隔符模式將其輸入分解為標記,預設情況下該分隔符模式與空白匹配。然後可以使用不同的 next 方法將得到的標記轉換為不同型別的值。例如,以下 使使用者能夠從 system.in 中讀取乙個數 scanner...

常用類 Scanner類

scanner類概述 jdk5以後用於獲取使用者的鍵盤輸入 構造方法 public scanner inputstream source 基本格式 hasnext 判斷是否還有下乙個輸入項,其中 可以是int,double等。如果需要判斷是否包含下乙個字串,則可以省略 next 獲取下乙個輸入項。的...