1. 程式人生 > >Java 常用對象-Scanner類

Java 常用對象-Scanner類

輸入 使用字符串 掃描器 正則表達式 不同類 不同的 回車 需要 string

2017-11-02 16:33:11

Scanner類:一個可以使用正則表達式來解析基本類型和字符串的簡單文本掃描器。

Scanner 使用分隔符模式將其輸入分解為標記,默認情況下該分隔符模式與空白匹配。然後可以使用不同的 next 方法將得到的標記轉換為不同類型的值。

*構造方法

技術分享

*常用方法

基本格式:hasNextXxx()判斷是否還有下一個輸入項,其中Xxx可以是Int,Double等。如果需要判斷是否包含下一個字符串,可以省略Xxx

    nextXxx():獲取下一個輸入項。

默認情況下,Scanner使用空格,回車作為分隔符。

常用的有Public int nextInt(),Public String nextLine()

技術分享

技術分享

技術分享

技術分享

先獲取數值類型,再獲取字符串類型會出現問題。這個問題在C++中也遇到過。

public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        
        //y會為空
        int x=sc.nextInt();
        String y=sc.nextLine();

        System.out.println(x+y);
    }

解決方法:

A:重定義一個掃描器

B:先全部使用字符串獲取,再轉換

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

        //y會為空
        int x=sc.nextInt();

        Scanner sc2 = new Scanner(System.in);
        String y=sc2.nextLine();

        System.out.println(x+y);
    }

Java 常用對象-Scanner類