使用Scanner類(lèi)從控制臺(tái)輸入文字
在進(jìn)行Java開(kāi)發(fā)的過(guò)程中,為了測(cè)試代碼的正確性,經(jīng)常需要從控制臺(tái)輸入數(shù)據(jù)進(jìn)行驗(yàn)證。本文將介紹如何使用Scanner類(lèi)從控制臺(tái)輸入內(nèi)容。 Scanner類(lèi)的使用方法在Java1.5版本之后引入了Sca
在進(jìn)行Java開(kāi)發(fā)的過(guò)程中,為了測(cè)試代碼的正確性,經(jīng)常需要從控制臺(tái)輸入數(shù)據(jù)進(jìn)行驗(yàn)證。本文將介紹如何使用Scanner類(lèi)從控制臺(tái)輸入內(nèi)容。
Scanner類(lèi)的使用方法
在Java1.5版本之后引入了Scanner類(lèi),它可以方便地從控制臺(tái)讀取內(nèi)容。首先需要?jiǎng)?chuàng)建Scanner類(lèi)的實(shí)例,構(gòu)造函數(shù)的參數(shù)類(lèi)型為InputStream。在這里我們使用,這個(gè)輸入流指向控制臺(tái)。另外,需要導(dǎo)入Scanner所在的包java.util。
讀取一行數(shù)據(jù)
通過(guò)調(diào)用nextLine方法可以讀取一行數(shù)據(jù)。當(dāng)程序執(zhí)行到nextLine方法時(shí),線(xiàn)程會(huì)被阻塞,等待用戶(hù)輸入。用戶(hù)輸入完畢后,按下回車(chē)鍵即可獲取到輸入的值。除了使用nextLine方法,也可以使用next方法來(lái)讀取一行內(nèi)容。
指定輸入類(lèi)型
除了輸入整行文本外,還可以指定輸入的類(lèi)型。例如,nextInt方法要求輸入int類(lèi)型的數(shù)字,如果用戶(hù)輸入了字母,程序就會(huì)出錯(cuò)。類(lèi)似地,還可以使用nextBoolean來(lái)限定輸入boolean類(lèi)型,使用nextByte來(lái)限定輸入byte類(lèi)型等。
錯(cuò)誤處理
在用戶(hù)輸入與程序期望的類(lèi)型不匹配時(shí),通常會(huì)拋出InputMismatchException異常。因此,在讀取用戶(hù)輸入時(shí),建議進(jìn)行錯(cuò)誤處理,以確保輸入的數(shù)據(jù)類(lèi)型符合預(yù)期。
示例代碼
```java
import ;
public class InputExample {
public static void main(String[] args) {
Scanner scanner new Scanner();
("請(qǐng)輸入一個(gè)整數(shù):");
int num ();
("您輸入的整數(shù)是:" num);
("請(qǐng)輸入一個(gè)布爾值(true或者false):");
boolean bool ();
("您輸入的布爾值是:" bool);
();
}
}
```
以上是關(guān)于使用Scanner類(lèi)從控制臺(tái)輸入文字的詳細(xì)介紹,希望對(duì)Java開(kāi)發(fā)者有所幫助。通過(guò)Scanner類(lèi),可以方便地接收用戶(hù)輸入,使程序與用戶(hù)交互更加友好。