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

Java中鍵盤輸入的幾種常見方式小結(jié)

 更新時(shí)間:2023年09月18日 09:18:06   作者:愛吃檸檬的天天  
本文主要介紹了Java中鍵盤輸入的幾種常見方式小結(jié),主要是三種方式IO流、Scanner類、BufferedReader寫入,具有一定的參考價(jià)值,感興趣的可以了解一下

一、IO流

在Java的輸入中,是以輸入流的形式進(jìn)入程序,因此無法直接指定輸入的類型,僅能讀取鍵盤上的內(nèi)容,返回一個(gè)ASCII碼,所以在使用輸入流的時(shí)候,本質(zhì)是一串ASCII碼,需要將類型強(qiáng)轉(zhuǎn)至char,才能正確顯示。

在Java的IO流中,鍵盤所輸入的會(huì)先存放到緩沖流中,當(dāng)按下Enter鍵的時(shí)候,將緩重流中的數(shù)據(jù)寫入到內(nèi)存中,因?yàn)榇诵再|(zhì),我們無法在鍵盤輸入的過程中直接獲取內(nèi)容。

class InputDemo {
    public static void main(String[] args)
      throws java.io.IOException{
    int input;
    input=(int) System.in.read();
    System.out.println(input);
    }
}

當(dāng)我們輸入t tt,此時(shí)輸出的值為其ASCII碼116 116116,當(dāng)我們將里面的i n t intint改為c h a r charchar,程序?qū)⒄o@示出字母t tt。

class InputDemo {
    public static void main(String[] args)
      throws java.io.IOException{
    char input;
    input=(char) System.in.read();
    System.out.println(input);
    }
}

在System.io.read()函數(shù)中,read是等待回車鍵刷取緩存的內(nèi)容,因此此函數(shù)不能吸收回車和換行符,但readLine函數(shù)可以吸收回車和換行。若只是用read函數(shù)可以采用寫兩個(gè)read進(jìn)行吸收回車。

因?yàn)镴ava的異常捕獲機(jī)制,我們需要在函數(shù)的開頭加上throws java.io.IOException

二、Scanner類

從Java5開始,Java引入了Scanner類作為輸入的類型。由上可知,Java的輸入是以流的方式進(jìn)入,只能以字符串的形式進(jìn)入,但Scanner類支持以數(shù)據(jù)類型讀取內(nèi)容。

由于我們是使用Scanner這個(gè)類進(jìn)行輸入控制,因此首先我們需要構(gòu)造出這個(gè)類的對(duì)象。

Scanner input=new Scanner(System.in);

其中Scanner的函數(shù)常見的為.nextxxx,xxx為數(shù)據(jù)類型,若類型為字符串,需要使用.nextLine或者.next。.next相當(dāng)于C/C++中的scanf和cin,遇到空格或回車就停止。.nextLine相對(duì)于C/C++中的gets。

class InputDemo {
    public static void main(String[] args){
    Scanner input=new Scanner(System.in);
    String in=input.next();
    System.out.println(in);
    }
}

三 、BufferedReader寫入

以上兩種方法是用的字符輸入流的形式,BufferedReader采用的是緩存輸入流的形式。

同樣,此類在java.io.*內(nèi),因此我們需要在開頭導(dǎo)入包。

import java.io.*;//*表示此目錄下的所有
import java.io.BufferedReader;//直接導(dǎo)入

BufferedReader和正常的io流成員類型基本一致,唯一不同是類的構(gòu)建,BufferedReader需要使用字符輸入流作為基類。

BufferedReader input = new BufferedReader(new InputStreamReader(System.in));

到此這篇關(guān)于Java中鍵盤輸入的幾種常見方式小結(jié)的文章就介紹到這了,更多相關(guān)Java 鍵盤輸入內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • gradle中的增量構(gòu)建淺析

    gradle中的增量構(gòu)建淺析

    這篇文章主要介紹了gradle中的增量構(gòu)建,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-02-02
  • Java接口異步調(diào)用優(yōu)化技巧詳解

    Java接口異步調(diào)用優(yōu)化技巧詳解

    本文詳細(xì)介紹了在Java開發(fā)中,如何通過異步調(diào)用等技巧來優(yōu)化接口的性能,有效避免阻塞和提高并發(fā)處理能力,提升系統(tǒng)的穩(wěn)定性和響應(yīng)速度
    2023-05-05
  • 對(duì)SpringBoot項(xiàng)目Jar包進(jìn)行加密防止反編譯

    對(duì)SpringBoot項(xiàng)目Jar包進(jìn)行加密防止反編譯

    最近項(xiàng)目要求部署到其他公司的服務(wù)器上,但是又不想將源碼泄露出去,要求對(duì)正式環(huán)境的啟動(dòng)包進(jìn)行安全性處理,防止客戶直接通過反編譯工具將代碼反編譯出來,本文介紹了如何對(duì)SpringBoot項(xiàng)目Jar包進(jìn)行加密防止反編譯,需要的朋友可以參考下
    2023-10-10
  • 關(guān)于集合和字符串的互轉(zhuǎn)實(shí)現(xiàn)方法

    關(guān)于集合和字符串的互轉(zhuǎn)實(shí)現(xiàn)方法

    下面小編就為大家?guī)硪黄P(guān)于集合和字符串的互轉(zhuǎn)實(shí)現(xiàn)方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-08-08
  • Mybatis三種批量插入數(shù)據(jù)的方式

    Mybatis三種批量插入數(shù)據(jù)的方式

    這篇文章主要介紹了Mybatis的三種批量插入方式,幫助大家更好的理解和學(xué)習(xí)使用Java,感興趣的朋友可以了解下
    2021-04-04
  • SpringBoot 整合 dubbo xml實(shí)現(xiàn)代碼示例

    SpringBoot 整合 dubbo xml實(shí)現(xiàn)代碼示例

    這篇文章主要介紹了SpringBoot 整合 dubbo xml實(shí)現(xiàn)代碼示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-03-03
  • SpringBoot項(xiàng)目創(chuàng)建單元測(cè)試的流程步驟

    SpringBoot項(xiàng)目創(chuàng)建單元測(cè)試的流程步驟

    在日常開發(fā)的過程中,對(duì)自己的代碼進(jìn)行單元測(cè)試是個(gè)非常重要的過程,一方面可以最小范圍的針對(duì)一個(gè)方法進(jìn)行測(cè)試,提高測(cè)試的簡(jiǎn)便性以及測(cè)試的成本,本篇文章主要是為了總結(jié)一下如何優(yōu)雅的在Springboot項(xiàng)目中使用單元測(cè)試去測(cè)試功能,需要的朋友可以參考下
    2024-11-11
  • Velocity基本語法介紹

    Velocity基本語法介紹

    以下是對(duì)Velocity的基本語法進(jìn)行了深入的介紹。需要的朋友可以過來參考下
    2013-08-08
  • Java中==與equals的區(qū)別小結(jié)

    Java中==與equals的區(qū)別小結(jié)

    這篇文章主要介紹了Java中==與equals的區(qū)別小結(jié),本文總結(jié)結(jié)論:== 與 equals()比較的內(nèi)容是不同的,equals()方式是String類中的方法,它用于比較兩個(gè)對(duì)象引用所指的內(nèi)容是否相等,而 == 比較的是兩個(gè)對(duì)象引用的地址是否相等,需要的朋友可以參考下
    2015-06-06
  • spring boot整合Swagger2的示例代碼

    spring boot整合Swagger2的示例代碼

    Swagger 是一個(gè)規(guī)范和完整的框架,用于生成、描述、調(diào)用和可視化RESTful風(fēng)格的 Web 服務(wù)。這篇文章主要介紹了spring boot整合Swagger2,需要的朋友可以參考下
    2017-04-04

最新評(píng)論