java輸入空白行結束問題怎麼解決
java輸入空行結束
最近兩次筆試都被這一個問題困擾
如何在輸入空行後停止輸入,嘗試了各種方法,以下是可以實現該目的的程式碼:
public static void main(String[] args) { Scanner in = new Scanner(System.in); while(true){//第一处 String s = in.nextLine(); if(s.equals(""))//第二处 break; System.out.println(s); } System.out.println("Over Input"); }
以上程式碼第一處判斷條件可以替換為in.hasNextLine(),但是不可以是in.hasNext().第二處判斷條件可以是s.isEmpty(),也可以是s.length == 0。
我查找資料發現:
next()與nextLine有以下區別:
next()一定要讀取到有效字元後才可以結束輸入,對輸入有效字元之前遇到的空格鍵、Tab鍵或Enter鍵等結束符,next()方法會自動將其去掉,只有在輸入有效字元之後,next()方法才會將其後輸入的空白鍵、Tab鍵或Enter鍵等視為分隔符號或結束符。
簡單地說,next方法不能得到有空格的字串。
而nextLine()方法的結束符只是Enter鍵,也就是nextLine()方法回傳的是Enter鍵之前的所有字符,它是可以得到有空格的字串的。
java輸入資料,空格繼續,回車結束輸入
普通版
可輸入,可輸出。帶有詳細的註解
import java.util.Scanner; public class SumDemo { public static void main(String[] args) { System.out.println("请输入两个数字,中间用空格隔开,例如5 5"); //得到一个扫描器,用来扫描 系统的输入 Scanner input = new Scanner(System.in); //申明一个临时的字符串变量temp,用来保存 扫描器读取的一行; String temp = input.nextLine(); //temp字符串首先trim()一下,就是去掉两边的空白, //因为有的人可能输入的是 空格5空格5空格回车。. //所以去掉两边的空格变成 5空格5回车 就符合要求了 //split(" ")方法表示,用空格去切割字符串,返回的结果是一个字符串数组 String[] ss = temp.trim().split(" "); //从两个字符串中解析得到两个数字,并求和 int num1 = Integer.parseInt(ss[0]); int num2 = Integer.parseInt(ss[1]); int sum = num1+num2; //输出结果 System.out.println("输入的数字是"+num1+" "+num2+"两数的和是:"+sum); //养成良好的习惯,打开了的资源要记得关闭,我们打开了扫描器,就要关闭扫描器 input.close(); } }
升級版
可重複輸入數字,重複輸出結果,並帶退出功能、
import java.util.Scanner; public class SumTest { public static void main(String[] args) { Scanner input = new Scanner(System.in); while(true){ System.out.println("如果输入exit,那么退出。输入两个数字,用空格隔开"); String temp = input.nextLine(); if(temp.trim().equals("exit")){ break; } String[] ss = temp.trim().split(" "); int num1 = Integer.parseInt(ss[0]); int num2 = Integer.parseInt(ss[1]); int sum = num1+num2; System.out.println("输入的数字是"+num1+" "+num2+"两数的和是:"+sum); } input.close(); } }
以上是java輸入空白行結束問題怎麼解決的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

Java 8引入了Stream API,提供了一種強大且表達力豐富的處理數據集合的方式。然而,使用Stream時,一個常見問題是:如何從forEach操作中中斷或返回? 傳統循環允許提前中斷或返回,但Stream的forEach方法並不直接支持這種方式。本文將解釋原因,並探討在Stream處理系統中實現提前終止的替代方法。 延伸閱讀: Java Stream API改進 理解Stream forEach forEach方法是一個終端操作,它對Stream中的每個元素執行一個操作。它的設計意圖是處

Java是熱門程式語言,適合初學者和經驗豐富的開發者學習。本教學從基礎概念出發,逐步深入解說進階主題。安裝Java開發工具包後,可透過建立簡單的「Hello,World!」程式來實踐程式設計。理解程式碼後,使用命令提示字元編譯並執行程序,控制台上將輸出「Hello,World!」。學習Java開啟了程式設計之旅,隨著掌握程度加深,可創建更複雜的應用程式。
