這篇文章主要介紹“java輸入空行結束問題怎么解決”,在日常操作中,相信很多人在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鍵之前的所有字符,它是可以得到帶空格的字符串的。
可輸入,可輸出。帶詳細的注釋
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輸入空行結束問題怎么解決”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。