Java scanner錄入數字與字符

import java.util.Scanner;

public class Test {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner scanner = new Scanner(System.in);
        int num1 = scanner.nextInt();
        int num2 = scanner.nextInt();
        String op = scanner.nextLine();

        System.out.println("num1:" + num1 + ",num2:" + num2 + ",op:" + op);

    }

}

代碼如上,在錄入num1,num2後,程序不會錄入op,直接輸出。
其實,op已經錄入了,只不過錄入的不是我們想要的。
op錄入的num2輸入以後的換行符。

解決方法:
1.在錄入op前增加一行但不做處理
String temp = scanner.nextLine();

2.將num1,num2的錄入換成

String num1 = scanner.nextLine();
String num2 = scanner.nextLine();

然後將num1,num2使用Integer.parseInt(String s)轉換成int類型

另外注意,一次輸入
[整數][空格][整數]
,使用

int num1 = scanner.nextLine();
int num2 = scanner.nextLine();

可以分別錄入兩個整數

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章