最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java Scanner類的使用示例代碼

 更新時間:2021年07月26日 10:18:10   作者:有點兒意思  
這篇文章主要介紹了java Scanner類的使用,Scanner類還可以任意地對字符串和基本類型(如int和double)的數(shù)據(jù)進行分析。借助于Scanner,可以針對任何要處理的文本內(nèi)容編寫自定義的語法分析器,感興趣的朋友跟隨小編一起看看吧

Scanner類簡介

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

為了實現(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("輸出的內(nèi)容為:"+str);
        }
         //凡是屬于IO流的類如果不關閉會一直占用資源,關閉scanner
        scanner.close();
    }
}

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

  • 一定要讀取到有效字符后才可以結(jié)束輸入。
  • 對有效字符之前遇到的空白,next()方法會將其自動去掉。
  • 只有輸入有效字符后才將其后面輸入的空白作為分隔符或者結(jié)束符。
  • 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("輸出的內(nèi)容為:"+str);
        }
        scanner.close();
    }
}

nextLine()注意點:

  • 以enter為結(jié)束符,也就是說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類內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • java 利用HttpClient PostMethod提交json數(shù)據(jù)操作

    java 利用HttpClient PostMethod提交json數(shù)據(jù)操作

    這篇文章主要介紹了java 利用HttpClient PostMethod提交json數(shù)據(jù)操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • Spring整合Quartz Job以及Spring Task的實現(xiàn)方法

    Spring整合Quartz Job以及Spring Task的實現(xiàn)方法

    下面小編就為大家分享一篇Spring整合Quartz Job以及Spring Task的實現(xiàn)方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12
  • Java?I/O?(Input/Output)文件字節(jié)流舉例詳解

    Java?I/O?(Input/Output)文件字節(jié)流舉例詳解

    Java的輸入輸出流(IO)是用于與外部設備(如文件、網(wǎng)絡連接等)進行數(shù)據(jù)交互的機制,下面這篇文章主要給大家介紹了關于Java?I/O?(Input/Output)文件字節(jié)流的相關資料,需要的朋友可以參考下
    2024-08-08
  • Mybatis 動態(tài)sql if 判讀條件等于一個數(shù)字的案例

    Mybatis 動態(tài)sql if 判讀條件等于一個數(shù)字的案例

    這篇文章主要介紹了Mybatis 動態(tài)sql if 判讀條件等于一個數(shù)字的案例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • 徹底解決Spring mvc中時間的轉(zhuǎn)換和序列化等問題

    徹底解決Spring mvc中時間的轉(zhuǎn)換和序列化等問題

    這篇文章主要介紹了徹底解決Spring mvc中時間的轉(zhuǎn)換和序列化等問題,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-09-09
  • Jenkins自動化部署SpringBoot項目的實現(xiàn)

    Jenkins自動化部署SpringBoot項目的實現(xiàn)

    本文主要介紹了Jenkins自動化部署SpringBoot項目的實現(xiàn),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2023-01-01
  • @Transactional和@DS怎樣在事務中切換數(shù)據(jù)源

    @Transactional和@DS怎樣在事務中切換數(shù)據(jù)源

    這篇文章主要介紹了@Transactional和@DS怎樣在事務中切換數(shù)據(jù)源問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • Java用?Gradle配置compile及implementation和api的區(qū)別

    Java用?Gradle配置compile及implementation和api的區(qū)別

    這篇文章主要介紹了Java用Gradle配置compile及implementation和api的區(qū)別,文章圍繞主題的相關資料展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-06-06
  • Java中Servlet的生命周期

    Java中Servlet的生命周期

    這篇文章主要介紹了Java中Servlet的生命周期,Servlet?初始化后調(diào)用?init?()?方法、Servlet?調(diào)用?service()?方法來處理客戶端的請求、Servlet?銷毀前調(diào)用?destroy()?方法,下面來看看具體的解析吧,需要的小伙伴可以參考一下
    2022-01-01
  • Spring Cloud與分布式系統(tǒng)簡析

    Spring Cloud與分布式系統(tǒng)簡析

    這篇文章主要介紹了Spring Cloud與分布式系統(tǒng)的相關內(nèi)容,具有一定參考價值,需要的朋友可以了解下。
    2017-09-09

最新評論

西畴县| 兰西县| 保亭| 那坡县| 措美县| 舟山市| 庐江县| 柳州市| 电白县| 常宁市| 靖西县| 宜丰县| 三明市| 奉贤区| 玉环县| 敦煌市| 洛南县| 九龙坡区| 汉阴县| 边坝县| 醴陵市| 永泰县| 青田县| 临夏市| 福州市| 永德县| 象州县| 张家口市| 达孜县| 杭锦旗| 紫金县| 庆阳市| 郑州市| 镇远县| 朝阳市| 湘乡市| 威信县| 平谷区| 大余县| 读书| 农安县|