91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java中方法next()和nextLine()的區別有什么

發布時間:2020-11-02 15:01:03 來源:億速云 閱讀:153 作者:Leah 欄目:開發技術

Java中方法next()和nextLine()的區別有什么?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

1、基本語法

1.1基本使用方法

nextLine()會讀取換行('\r'),但是不會進行輸出。

Java中Scanner類中的方法next()和nextLine()都是吸取輸入臺輸入的字符,區別:

  • next()不會吸取字符前/后的空格/Tab鍵,只吸取字符,開始吸取字符(字符前后不算)直到遇到空格/Tab鍵/回車截止吸取;
  • nextLine()吸取字符前后的空格/Tab鍵,回車鍵截止。

輸入兩行字符串:
我愛學JAVA 我真的很愛愛學JAVA
我真的很愛很愛學JAVA

期望輸出結果:
我愛學JAVA 我真的很愛愛學JAVA
我真的很愛很愛學JAVA

package scanner;

import java.util.Scanner;

public class Sun_01 {
  public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);
    String str1 = scanner.nextLine();
    String str=scanner.next();
    System.out.println(str1);
    System.out.println(str);
    scanner.close();
  }
}

Java中方法next()和nextLine()的區別有什么

沒錯,和我們期望輸出結果一樣。

2、nextLine()易錯點

2.1 nextLine()使用錯誤案例

我們第一行使用next()進行讀入,第二行使用nextLine()進行讀入兩行字符串

輸入兩行字符串:
我愛學JAVA
我愛學JAVA 我真的很愛愛學JAVA

期望輸出結果:
我愛學JAVA
我愛學JAVA 我真的很愛愛學JAVA

package scanner;

import java.util.Scanner;

public class Sun_01 {
  public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);
    String str = scanner.next();
    String str2=scanner.nextLine();
    System.out.println(str);
    System.out.println(str2);
    scanner.close();
  }
}

Java中方法next()和nextLine()的區別有什么

​ 會發現,輸入臺輸入“我愛學JAVA"后接著輸出了,與我們期望輸出結果不一樣。

到底是因為什么呢?

​ Scanner是一個掃描器,我們錄取到鍵盤的數據,先存到緩存區等待讀取,它判斷讀取結束的標示是 空白符;比如空格,回車,tab 等等。

​ next()方法讀取到空白符就結束,也就是讀取完“我愛學JAVA”;

​ nextLine()只讀取到回車結束也就是“\r”;

通俗解釋為:因為next()讀取到空白符前的數據時結束了,然后把回車“\r”留給了nextLine();所以上面nextLine()沒有輸出,不輸出不代表沒數據,是接到了空(回車“/r”)的數據。

正確的解決方式:

package scanner;

import java.util.Scanner;

public class Sun_01 {
  public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);
    String str = scanner.next();
    String str1=scanner.nextLine();
    String str2=scanner.nextLine();
    System.out.println(str);
    System.out.println(str2);
    scanner.close();
  }
}

Java中方法next()和nextLine()的區別有什么

解決方式為多用一個nextLine()將換行讀入。

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

灵武市| 渑池县| 特克斯县| 定南县| 新津县| 宁南县| 望城县| 五大连池市| 辽阳市| 芒康县| 永吉县| 恩施市| 大方县| 开鲁县| 昌邑市| 大庆市| 平度市| 屏山县| 永平县| 肃北| 依安县| 昌邑市| 宝鸡市| 韩城市| 额敏县| 呼和浩特市| 松阳县| 青田县| 瓦房店市| 行唐县| 青海省| 苍梧县| 宜昌市| 柳河县| 略阳县| 南雄市| 顺平县| 纳雍县| 微博| 曲水县| 高碑店市|