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

java鍵盤錄入的方法舉例詳解

 更新時間:2023年10月12日 08:38:29   作者:張與謙  
這篇文章主要給大家介紹了關于java鍵盤錄入的相關資料,我們在寫程序的時候,數據值都是固定的,但是實際開發(fā)中,數據值肯定是變化的,所以,把數據改進為鍵盤錄入,提高程序的靈活性,需要的朋友可以參考下

一,鍵盤錄入涉及到的方法如下:

 next()、nextLine()、nextInt()、nextDouble()。

1)next()、nextLine():

可以接受任意數據,但是都會返回一個字符串。

比如:鍵盤錄入abc,那么會把abc看做字符串返回。

鍵盤錄入123,那么會把123看做字符串返回。

代碼示例:

Scanner sc = new Scanner(System.in);
String s = sc.next();//錄入的所有數據都會看做是字符串
System.out.println(s);

代碼示例:

Scanner sc = new Scanner(System.in);
String s = sc.nextLine();//錄入的所有數據都會看做是字符串
System.out.println(s);

2)nextInt():

只能接受整數。

比如:鍵盤錄入123,那么會把123當做int類型的整數返回。

鍵盤錄入小數或者其他字母,就會報錯。

代碼示例:

Scanner sc = new Scanner(System.in);
int s = sc.nextInt();//只能錄入整數
System.out.println(s);

3)nextDouble():

能接收整數和小數,但是都會看做小數返回。

錄入字母會報錯。

代碼示例:

Scanner sc = new Scanner(System.in);
double d = sc.nextDouble();//錄入的整數,小數都會看做小數。
						//錄入字母會報錯
System.out.println(d);

二,方法底層細節(jié) :

第一個細節(jié):

next(),nextInt(),nextDouble()在接收數據的時候,會遇到空格,回車,制表符其中一個就會停止接收數據。

代碼示例:

Scanner sc = new Scanner(System.in);
double d = sc.nextDouble();
System.out.println(d);
//鍵盤錄入:1.1 2.2//注意錄入的時候1.1和2.2之間加空格隔開。
//此時控制臺打印1.1
//表示nextDouble方法在接收數據的時候,遇到空格就停止了,后面的本次不接收。
Scanner sc = new Scanner(System.in);
int i = sc.nextInt();
System.out.println(i);
//鍵盤錄入:1 2//注意錄入的時候1和2之間加空格隔開。
//此時控制臺打印1
//表示nextInt方法在接收數據的時候,遇到空格就停止了,后面的本次不接收。
Scanner sc = new Scanner(System.in);
String s = sc.next();
System.out.println(s);
//鍵盤錄入:a b//注意錄入的時候a和b之間加空格隔開。
//此時控制臺打印a
//表示next方法在接收數據的時候,遇到空格就停止了,后面的本次不接收。

第二個細節(jié):

next(),nextInt(),nextDouble()在接收數據的時候,會遇到空格,回車,制表符其中一個就會停止接收數據。但是這些符號 + 后面的數據還在內存中并沒有接收。如果后面還有其他鍵盤錄入的方法,會自動將這些數據接收。

代碼示例:

Scanner sc = new Scanner(System.in);
String s1 = sc.next();
String s2 = sc.next();
System.out.println(s1);
System.out.println(s2);
//此時值鍵盤錄入一次a b(注意a和b之間用空格隔開)
//那么第一個next();會接收a,a后面是空格,那么就停止,所以打印s1是a
//但是空格+b還在內存中。
//第二個next會去掉前面的空格,只接收b
//所以第二個s2打印出來是b

第三個細節(jié):

nextLine()方法是把一整行全部接收完畢。

代碼示例:

Scanner sc = new Scanner(System.in);
String s = sc.nextLine();
System.out.println(s);
//鍵盤錄入a b(注意a和b之間用空格隔開)
//那么nextLine不會過濾前面和后面的空格,會把這一整行數據全部接收完畢。

三、混用引起的后果

上面說的兩套鍵盤錄入不能混用,如果混用會有嚴重的后果。

代碼示例:

Scanner sc = new Scanner(System.in);//①
int i = sc.nextInt();//②
String s = sc.nextLine();//③
System.out.println(i);//④
System.out.println(s);//⑤

當代碼運行到第二行,會讓我們鍵盤錄入,此時錄入123。

但是實際上我們錄的是123+回車。

而nextInt是遇到空格,回車,制表符都會停止。

所以nextInt只能接受123,回車還在內存中沒有被接收。

此時就被nextLine接收了。

所以,如果混用就會導致nextLine接收不到數據。

四、結論(如何使用)

鍵盤錄入分為兩套:

  • next()、nextInt()、nextDouble()這三個配套使用。

如果用了這三個其中一個,就不要用nextLine()。

  • nextLine()單獨使用。

如果想要整數,那么先接收,再使用Integer.parseInt進行類型轉換。

代碼示例:

Scanner sc = new Scanner(System.in);
String s = sc.next();//鍵盤錄入123
System.out.println("此時為字符串" + s);//此時123是字符串
int i = sc.nextInt();//鍵盤錄入123
System.out.println("此時為整數:" + i);
Scanner sc = new Scanner(System.in);
String s = sc.nextLine();//鍵盤錄入123
System.out.println("此時為字符串" + s);//此時123是字符串
int i = Integer.parseInt(s);//想要整數再進行轉換
System.out.println("此時為整數:" + i);

總結 

到此這篇關于java鍵盤錄入的文章就介紹到這了,更多相關java鍵盤錄入內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • SpringBoot2種單元測試方法解析

    SpringBoot2種單元測試方法解析

    這篇文章主要介紹了SpringBoot2種單元測試方法解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-10-10
  • Java?MethodHandles介紹與反射對比區(qū)別詳解

    Java?MethodHandles介紹與反射對比區(qū)別詳解

    這篇文章主要為大家介紹了Java?MethodHandles介紹與反射對比區(qū)別詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-11-11
  • java中如何獲取相關參數

    java中如何獲取相關參數

    這篇文章主要介紹了java獲取系統(tǒng)屬性相關參數的方法,,需要的朋友可以參考下
    2015-07-07
  • SpringBoot+MinIO實現(xiàn)文件切片極速詳解

    SpringBoot+MinIO實現(xiàn)文件切片極速詳解

    在現(xiàn)代Web應用中,文件上傳是一個常見的需求,尤其是對于大文件的上傳,如視頻、音頻或大型文檔,所以本文就來為大家介紹一下如何使用Spring Boot和MinIO實現(xiàn)文件切片極速上傳技術吧
    2023-12-12
  • Spring Boot2配置Swagger2生成API接口文檔詳情

    Spring Boot2配置Swagger2生成API接口文檔詳情

    這篇文章主要介紹了Spring Boot2配置Swagger2生成API接口文檔詳情,文章圍繞主題展開詳細的內容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-09-09
  • 詳解Reactor如何優(yōu)雅Exception異常處理

    詳解Reactor如何優(yōu)雅Exception異常處理

    初識響應式編程的時候,除了從命令式的思維方式轉變?yōu)楹瘮凳降木幊谭绞酵?,其中有一個很大的不適應的地方就是在面對異常時該怎么處理。本文將通過Project?Reactor的文檔以及源碼來深入解讀,在reactor中是如何優(yōu)雅地實現(xiàn)這異常處理三板斧,希望對大家有所幫助
    2023-02-02
  • Java Arrays工具類用法詳解

    Java Arrays工具類用法詳解

    這篇文章主要介紹了Java Arrays工具類用法,結合實例形式分析了java Arrays工具類針對數組元素修改、復制、排序等操作使用技巧與相關注意事項,需要的朋友可以參考下
    2019-05-05
  • 基于java中子類的繼承性的應用介紹

    基于java中子類的繼承性的應用介紹

    本篇介紹了,基于java中子類的繼承性的應用。需要的朋友參考下
    2013-05-05
  • Spring中配置和讀取多個Properties文件的方式方法

    Spring中配置和讀取多個Properties文件的方式方法

    本篇文章主要介紹了Spring中配置和讀取多個Properties文件的方式方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-04-04
  • 一文帶你了解gson如何序列化子類

    一文帶你了解gson如何序列化子類

    這篇文章主要為大家詳細介紹了gson如何序列化子類的相關知識,文中的示例代碼講解詳細,具有一定的學習和借鑒價值,感興趣的小伙伴可以跟隨小編一起學習一下
    2023-10-10

最新評論