欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java Scanner的使用和hasNextXXX()的用法說(shuō)明

 更新時(shí)間:2021年10月30日 15:35:46   作者:無(wú)賴H4  
這篇文章主要介紹了Java Scanner的使用和hasNextXXX()的用法說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

輸入輸出

輸出

基本語(yǔ)法

System.out.println(msg); //輸出一個(gè)字符串,自帶換行
System.out.print(msg); //輸出一個(gè)字符串,不帶換行
System.out.printf(msg); //格式化輸出,和C語(yǔ)言相同

例如:

public class SannerDemo {
    public static void main(String[] args) {
        System.out.println("hello world!");
        System.out.print("hello world!");
        String str = "hello world";
        System.out.printf("%s\n",str);
    }
}

在這里插入圖片描述

快捷鍵推薦:在這里,如果使用的是 IDEA的話,可以輸入sout然后回車,會(huì)自動(dòng)輸出 System.out.println();

輸入

使用Scanner讀取

首先需要導(dǎo)入==import java.util.Scanner;==的包,然后 Scanner sc =new Scanner(System.in);,這段代碼的主要作用是,從鍵盤中輸入中讀取數(shù)據(jù)。

然后讀取數(shù)據(jù):

next()、nextInt()和nextLIne()的區(qū)別;

import java.util.Scanner;
public class SannerDemo {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int i = sc.nextInt();
        System.out.println(i);   //讀取int型的數(shù)據(jù)
        //讀取一行數(shù)據(jù)
        String s1 = sc.nextLine();
        System.out.println(s1);
        //讀取字符串
        String s2 = sc.next();
        System.out.println(s2);
    }

nextInt():

 		int i = sc.nextInt();
        System.out.println(i);   //讀取int型的數(shù)據(jù)

在這里插入圖片描述

在這里插入圖片描述

可以讀取數(shù)字,但是遇到空格,只能讀取空格前的數(shù)字。

next():

//        //讀取字符串
        String s2 = sc.next();
        System.out.println(s2);

在這里插入圖片描述

可以讀取字符串,但是遇到空格,只能讀取空格前的數(shù)字。

nextLine():

  		 //讀取一行數(shù)據(jù)
        String s1 = sc.nextLine();
        System.out.println(s1);

在這里插入圖片描述

可以讀取字符串,并讀取這一行 ,但是遇到回車結(jié)束。

注意:

next()和nextLine()不可以同時(shí)使用:

例如:

        //讀取字符串
        String s2 = sc.next();
        System.out.println(s2);
        //讀取一行數(shù)據(jù)
        String s1 = sc.nextLine();
        System.out.println(s1);

在這里插入圖片描述

這樣只會(huì)輸出一行,這是因?yàn)閚extLine()讀取了回車,然后結(jié)束。

next()遇到空客會(huì)結(jié)束。

在這里插入圖片描述

使用Scanner循環(huán)讀取N個(gè)數(shù)字/字符串

hasNextInt()的使用

import java.util.Scanner;
public class SannerDemo {
    public static void main(String[] args) {
        Scanner sc =new Scanner(System.in);        
        while (sc.hasNextInt()){
            int i = sc.nextInt();//輸入數(shù)字i
            System.out.println(i);//打印數(shù)字i
        }        
    }

在這里插入圖片描述

當(dāng)程序開(kāi)始之后,會(huì)一直循環(huán)輸入并打印一個(gè)數(shù)字,知道Ctrl+d結(jié)束程序

在這里sc.hasNextInt()的結(jié)果是一個(gè)boolean的類型,當(dāng)結(jié)果為false是結(jié)束。

注意:

Ctrl+d用來(lái)結(jié)束循環(huán)輸入多個(gè)數(shù)據(jù)

同理:

在這里插入圖片描述

這些方法都可以用于循環(huán)數(shù)據(jù)輸入。

關(guān)于Scanner中nextxxx()須注意的一點(diǎn)

 public static void main(String[] args) {
        // TODO code application logic here        
        Scanner s = new Scanner(System.in); 
        
        //需要注意的是,如果在通過(guò)nextInt()讀取了整數(shù)后,再接著讀取字符串,讀出來(lái)的是回車換行:"\r\n",因?yàn)閚extInt僅僅讀取數(shù)字信息,而不會(huì)讀走回車換行"\r\n".
 
        //所以,如果在業(yè)務(wù)上需要讀取了整數(shù)后,接著讀取字符串,那么就應(yīng)該連續(xù)執(zhí)行兩次nextLine(),第一次是取走整數(shù),第二次才是讀取真正的字符串
        int i = s.nextInt(); 
        System.out.println("讀取的整數(shù)是"+ i);
        String rn = s.nextLine();//讀取到的是空格
        String a = s.nextLine();//讀取到的是字符串
        System.out.println("讀取的字符串是:"+a);
    }

PS:nextDouble,nextFloat與nextInt是一樣的

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java中File文件操作類的基礎(chǔ)用法

    Java中File文件操作類的基礎(chǔ)用法

    這篇文章主要給大家介紹了關(guān)于Java中File文件操作類基礎(chǔ)用法的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用File類具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-07-07
  • Java Web實(shí)現(xiàn)添加定時(shí)任務(wù)的方法示例

    Java Web實(shí)現(xiàn)添加定時(shí)任務(wù)的方法示例

    這篇文章主要介紹了Java Web實(shí)現(xiàn)添加定時(shí)任務(wù)的方法,涉及java web定時(shí)任務(wù)控制類定義、調(diào)用及監(jiān)聽(tīng)器定義、添加等相關(guān)操作技巧,需要的朋友可以參考下
    2018-01-01
  • SpringCloud入門實(shí)驗(yàn)環(huán)境搭建

    SpringCloud入門實(shí)驗(yàn)環(huán)境搭建

    這篇文章主要介紹了SpringCloud入門實(shí)驗(yàn)環(huán)境搭建的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)使用SpringCloud,感興趣的朋友可以了解下
    2021-04-04
  • SpringCloud-Hystrix-Dashboard客戶端服務(wù)監(jiān)控的實(shí)現(xiàn)方法

    SpringCloud-Hystrix-Dashboard客戶端服務(wù)監(jiān)控的實(shí)現(xiàn)方法

    這篇文章主要介紹了SpringCloud-Hystrix-Dashboard客戶端服務(wù)監(jiān)控的實(shí)現(xiàn)方法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-03-03
  • Java經(jīng)典排序算法之插入排序

    Java經(jīng)典排序算法之插入排序

    這篇文章主要為大家詳細(xì)介紹了Java經(jīng)典排序算法之插入排序,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-04-04
  • Mybatis批處理、Mysql深分頁(yè)操作

    Mybatis批處理、Mysql深分頁(yè)操作

    這篇文章主要介紹了Mybatis批處理、Mysql深分頁(yè)操作,Mybatis批量操作包括Foreach方式和ExecutorType.BATCH插入操作,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-08-08
  • 利用AOP實(shí)現(xiàn)系統(tǒng)告警的方法詳解

    利用AOP實(shí)現(xiàn)系統(tǒng)告警的方法詳解

    在開(kāi)發(fā)的過(guò)程中會(huì)遇到各種各樣的開(kāi)發(fā)問(wèn)題,服務(wù)器宕機(jī)、網(wǎng)絡(luò)抖動(dòng)、代碼本身的bug等等。針對(duì)代碼的bug,我們可以提前預(yù)支,通過(guò)發(fā)送告警信息來(lái)警示我們?nèi)ジ深A(yù),盡早處理。本文將利用AOP實(shí)現(xiàn)系統(tǒng)告警,需要的可以參考一下
    2022-09-09
  • Java多線程并發(fā)開(kāi)發(fā)之DelayQueue使用示例

    Java多線程并發(fā)開(kāi)發(fā)之DelayQueue使用示例

    這篇文章主要為大家詳細(xì)介紹了Java多線程并發(fā)開(kāi)發(fā)之DelayQueue使用示例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • 淺聊一下Spring中Bean的配置細(xì)節(jié)

    淺聊一下Spring中Bean的配置細(xì)節(jié)

    我們知道,當(dāng)寫完一個(gè)普通的 Java 類后,想讓 Spring IoC 容器在創(chuàng)建類的實(shí)例對(duì)象時(shí)使用構(gòu)造方法完成實(shí)例對(duì)象的依賴注入,那么就需要在配置元數(shù)據(jù)中寫好類的 Bean 定義,包括各種標(biāo)簽的屬性。所以本文我們來(lái)說(shuō)說(shuō)這其中的配置細(xì)節(jié),需要的朋友可以參考下
    2023-07-07
  • Java?spring?boot發(fā)送郵箱實(shí)現(xiàn)過(guò)程記錄

    Java?spring?boot發(fā)送郵箱實(shí)現(xiàn)過(guò)程記錄

    我們?cè)?站上注冊(cè)賬號(hào)的時(shí)候?般需要獲取驗(yàn)證碼,?這個(gè)驗(yàn)證碼?般發(fā)送在你的?機(jī)號(hào)上還有的是發(fā)送在你的郵箱中,這篇文章主要給大家介紹了關(guān)于Java?spring?boot發(fā)送郵箱實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下
    2024-01-01

最新評(píng)論