久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

java Scanner類的使用示例代碼

瀏覽:151日期:2023-02-07 18:50:18
Scanner類簡介

Java 5添加了java.util.Scanner類,這是一個用于掃描輸入文本的新的實用程序。它是以前的StringTokenizer和Matcher類之間的某種結合。由于任何數(shù)據(jù)都必須通過同一模式的捕獲組檢索或通過使用一個索引來檢索文本的各個部分。于是可以結合使用正則表達式和從輸入流中檢索特定類型數(shù)據(jù)項的方法。這樣,除了能使用正則表達式之外,Scanner類還可以任意地對字符串和基本類型(如int和double)的數(shù)據(jù)進行分析。借助于Scanner,可以針對任何要處理的文本內容編寫自定義的語法分析器。

為了實現(xiàn)程序與人的交互,java給我們提供了這樣一個工具類,我們可以獲取用戶的輸入。java.util.Scanner是Java5的新特征。我們可以通過Scanner類來獲取用戶的輸入。

我們使用Scanner scanner = new Scanner(System.in);的基礎語法來創(chuàng)建一個掃描對象,用于接收鍵盤數(shù)。

hasnext()與hasnextLine()的使用:

我們通過Scanner類的next()與nextLine()的方法獲取輸入的字符串。在讀取前,我們一般需要使用hasNext()與hasNextLine()判斷是否還有輸入的數(shù)據(jù)。

當我們使用next方式接收時:

代碼示例:

package com.scanner;import java.util.Scanner;public class Demo01 { public static void main(String[] args) {//創(chuàng)建一個掃描對象,用于接受鍵盤數(shù)Scanner scanner= new Scanner(System.in);System.out.println('使用next方式接收:');//判斷用戶有沒有輸入字符串if(scanner.hasNext()){ //使用next方式接收 String str = scanner.next(); System.out.println('輸出的內容為:'+str);} //凡是屬于IO流的類如果不關閉會一直占用資源,關閉scannerscanner.close(); }}

next()注意點:(String str = scanner.next());

一定要讀取到有效字符后才可以結束輸入。 對有效字符之前遇到的空白,next()方法會將其自動去掉。 只有輸入有效字符后才將其后面輸入的空白作為分隔符或者結束符。 next()不能得到帶有空格的字符串。

當我們使用nextLine()方式接收時:(String str = scanner.nextLine());

代碼示例:

package com.scanner;import java.util.Scanner;public class Demo02 { public static void main(String[] args) {//從鍵盤接收數(shù)據(jù)Scanner scanner = new Scanner(System.in);System.out.println('使用nextLine方式接收');//判斷是否還有輸入if(scanner.hasNext()){ String str = scanner.nextLine(); System.out.println('輸出的內容為:'+str);}scanner.close(); }}

nextLine()注意點:

以enter為結束符,也就是說nextLine()方法返回的是輸入回車之前的所有字符。 它可以獲得空白。

當輸入的數(shù)據(jù)類型不同時:如

Int型:Scanner.hasNextInt();//判斷是否還有數(shù)據(jù)輸入

​ Scanner.nextInt();//輸入整數(shù)數(shù)據(jù)

Float型同上。

scanner進階使用(與循環(huán)共同使用)

代碼示例:

package com.scanner;import java.util.Scanner;public class Demo04 { public static void main(String[] args) {Scanner scanner = new Scanner(System.in); //從鍵盤接收數(shù)據(jù)int i = 0;float f = 0.0f;System.out.println('請輸入整數(shù):');if (scanner.hasNextInt()){ //判斷是否還有數(shù)據(jù)輸入; i = scanner.nextInt(); System.out.println('整數(shù)數(shù)據(jù):'+ i);}else{ System.out.println('輸入的不是整數(shù)數(shù)據(jù)!');}System.out.println('請輸入小數(shù):');if (scanner.hasNext()){ f = scanner.nextFloat();//代表為真 System.out.println('小數(shù)數(shù)據(jù):'+ f);}else{ System.out.println('輸入的不是小數(shù)數(shù)據(jù)!');}scanner.close();// 凡是屬于IO流的類如果不關閉會一直占用資源,關閉scanner }}

到此這篇關于java Scanner類的使用的文章就介紹到這了,更多相關java Scanner類內容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持好吧啦網(wǎng)!

標簽: Java
相關文章:
主站蜘蛛池模板: 黑龙江省| 海盐县| 松潘县| 广元市| 七台河市| 靖远县| 阳江市| 铁岭县| 辽源市| 资中县| 孝感市| 丹棱县| 长寿区| 绥芬河市| 汉川市| 三都| 承德县| 丹棱县| 乐清市| 岫岩| 册亨县| 鄂尔多斯市| 邛崃市| 文化| 荥阳市| 石楼县| 双流县| 通海县| 辽中县| 临桂县| 商洛市| 花莲市| 山东省| 黑龙江省| 永泰县| 逊克县| 龙泉市| 泉州市| 连州市| 砀山县| 东港市|