首頁  >  文章  >  Java  >  如何使用Scanner類別的hasNext()方法檢查使用者輸入中是否還有下一個元素

如何使用Scanner類別的hasNext()方法檢查使用者輸入中是否還有下一個元素

WBOY
WBOY原創
2023-07-24 21:46:471506瀏覽

如何使用Scanner類的hasNext()方法檢查使用者輸入中是否還有下一個元素

在Java中,Scanner類是一個常用的工具類,用於從標準輸入流(System. in)中讀取使用者輸入。 Scanner類別提供了許多方法用於解析不同類型的輸入,其中之一就是hasNext()方法,用於檢查使用者輸入中是否還有下一個元素。

當我們編寫需要接受使用者輸入的程式時,常常需要判斷使用者是否已經輸入完畢,這時可以使用hasNext()方法來實現。 hasNext()方法傳回一個boolean值,如果使用者輸入還有下一個元素,則傳回true;否則傳回false。

下面是一個範例程式碼,示範如何使用Scanner類別的hasNext()方法檢查使用者輸入中是否還有下一個元素:

import java.util.Scanner;

public class ScannerDemo {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        System.out.println("请输入一些整数,用空格分隔:");
        while (scanner.hasNext()) {
            if (scanner.hasNextInt()) {  // 检查用户输入的下一个元素是否是整数
                int num = scanner.nextInt();  // 如果是整数,则读取该整数
                System.out.println("您输入的整数是:" + num);
            } else {
                String str = scanner.next();  // 如果不是整数,则读取该字符串
                System.out.println("您输入的字符串是:" + str);
            }
        }

        scanner.close();
    }
}

在上面的範例程式碼中,我們創建了一個Scanner物件來讀取使用者的輸入。在循環中,我們使用hasNext()方法檢查使用者輸入中是否還有下一個元素。如果還有下一個元素,則繼續執行循環體內的程式碼;如果已經沒有下一個元素了,則跳出循環。

為了示範方便,我們在迴圈體內使用了一個if-else語句來判斷使用者輸入的是整數還是字串,並作對應的處理。如果使用者輸入的是整數,則使用nextInt()方法讀取該整數,並將其列印出來;如果使用者輸入的是字串,則使用next()方法讀取字串,並將其列印出來。

要注意的是,在使用Scanner類別讀取使用者輸入後,我們應該及時關閉Scanner對象,以釋放資源。可以透過呼叫scanner.close()方法來實現。

總結來說,使用Scanner類別的hasNext()方法可以方便地檢查使用者輸入中是否還有下一個元素。透過合理地應用此方法,我們可以處理使用者的輸入並進行相應的邏輯操作,提高程式的健全性。

以上是如何使用Scanner類別的hasNext()方法檢查使用者輸入中是否還有下一個元素的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn