java輸入時(shí)如何通過回車(enter)來結(jié)束輸入
輸入時(shí)通過回車(enter)來結(jié)束輸入
在編寫java程序的時(shí)候,我們想通過輸入回車來完成這一行的輸入,這是一個(gè)非常常見的問題,但是如果我們是用Scanner ,然后通過nextInt()方法調(diào)用的時(shí)候,不會(huì)停止輸入,回打出一個(gè)空行,然后等著你繼續(xù)輸入下一個(gè)數(shù)字。
解決辦法
我們可以設(shè)置兩個(gè)Scanner 第一個(gè)以行為單位讀取數(shù)據(jù),這樣就相當(dāng)于是用回車(enter)當(dāng)作結(jié)束符,
然后把讀取到的字符串傳入第二個(gè)Scanner, 然后在進(jìn)行處理
ArrayList<Integer> arr = new ArrayList() ;
System.out.println("Enter a space separated list of numbers:");
Scanner in = new Scanner(System.in);
? String line = in.nextLine();
? Scanner in2 = new Scanner(line);
??
? while(in2.hasNextInt()){
? ? ?arr.add(in2.nextInt());
?}
? System.out.println("The numbers were:"+arr.toString());只需要把nextInt 或者h(yuǎn)asnextint等函數(shù)改成你所需要的函數(shù)名就可以實(shí)現(xiàn) 不同的輸入,但是是以回車(enter)為結(jié)尾了。
java回車結(jié)束輸入一行
題目

在論壇找到這種方法:
Scanner s =new Scanner(System.in);
String str="";
do {
str=s.nextLine();
if(s.hasNextLine())
break;
}while(true);
System.out.println(str);
經(jīng)實(shí)踐,此法不通:

需要兩個(gè)回車才能結(jié)束輸入。
發(fā)現(xiàn)該解法
Scanner s= new Scanner(System.in); String str=s.nextLine(); Scanner st=new Scanner(str); ArrayList a =new ArrayList(); while(st.hasNextInt()) a.add(st.nextInt()); System.out.println(a);

將字符串作為輸入流,空格為間隔符:
源碼:

this調(diào)用下面構(gòu)造函數(shù):

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
解決jhipster修改jdl生成的實(shí)體類報(bào)錯(cuò):liquibase.exception.ValidationFailed
這篇文章主要介紹了解決jhipster修改jdl生成的實(shí)體類報(bào)錯(cuò):liquibase.exception.ValidationFailedException: Validation Failed問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-11-11
spring如何使用命名空間p簡(jiǎn)化bean的配置
這篇文章主要介紹了spring如何使用命名空間p簡(jiǎn)化bean的配置,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-01-01
如何解決java.lang.ClassNotFoundException: com.mysql.jdbc.Dr
這篇文章主要介紹了如何解決java.lang.ClassNotFoundException: com.mysql.jdbc.Driver問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-12-12
Dependency ‘XXX:‘ not found問題的三步解決
這篇文章主要介紹了Dependency ‘XXX:‘ not found問題的三步解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01
MyBatis傳入集合 list 數(shù)組 map參數(shù)的寫法
這篇文章主要介紹了MyBatis傳入集合 list 數(shù)組 map參數(shù)的寫法的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-06-06
MyBatis?Plus如何實(shí)現(xiàn)獲取自動(dòng)生成主鍵值
這篇文章主要介紹了MyBatis?Plus如何實(shí)現(xiàn)獲取自動(dòng)生成主鍵值問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-09-09
SpringBoot如何通過Map實(shí)現(xiàn)策略模式
策略模式是一種行為設(shè)計(jì)模式,它允許在運(yùn)行時(shí)選擇算法的行為,在Spring框架中,我們可以利用@Resource注解和Map集合來優(yōu)雅地實(shí)現(xiàn)策略模式,這篇文章主要介紹了SpringBoot如何通過Map實(shí)現(xiàn)策略模式,需要的朋友可以參考下2025-03-03

