2016-04-21 88 views
0

我正在創建一個Java控制檯程序,該程序讀取由字母和數字組成的輸入值,並且結果必須轉入下一個輸入行。閱讀數字和字母?

但是,只要我輸入數字和字母,程序就會返回一個錯誤代碼。以下是我寫的代碼的概要。在代碼爲int plate的地方,我覺得我需要輸入一些不同的內容,因爲我希望代碼能夠註冊類似於AAA111的字母和數字,並將它們返回到下一行代碼。

任何可以提供的問題和編碼佈局本身的幫助(我仍然是非常新的這一切)將大規模讚賞;

public static void main(String []args) 
{ 
    { 
     System.out.printf("Welcome to the input System\n\n"); 

     Scanner inputObject = new Scanner(System.in); 

     int plate; 
     int hours; 

     System.out.printf("Enter the licence plate number of car 1 ==>"); 
     plate = inputObject.nextInt(); 
     System.out.printf("Enter the hours car: " +plate+ " was parked==>"); 
     hours = inputObject.nextInt(); 
    } 
} 
+0

如何使用nextline或next,因爲alphas不是整數? plate = inputObject.nextLine(); –

回答

0

如果您使用的next(),而不是nextInt(),你會得到一個字符串。因此,改變你的盤子變量類型爲一個字符串,你就可以使用plate = inputObject.next()

0

首先,你想要在變量中存儲一個字母數字值。因此它應該是String,而不是int。

然後,要讀取字符串(控制檯中完整的輸入行),您需要撥打scanner.next()

scanner.nextInt()只會讀取整數,而您輸入的是字母數字值。

public static void main(String []args) 
    { 
    System.out.printf("Welcome to the input System\n\n"); 
    Scanner inputObject = new Scanner(System.in); 

    String plate; 
    int hours; 
    System.out.printf("Enter the licence plate number of car 1 ==>"); 
    plate = inputObject.next(); 
    System.out.printf("Enter the hours car: " +plate+ " was parked==>"); 
    hours = inputObject.nextInt(); 
} 
+0

非常感謝你們Imesha!那完美的工作。 –

+0

關於相同代碼的另一個簡短問題。如果我想循環這個序列另外2次,但改變值(例如汽車1到汽車2等)。我必須在哪裏放置循環功能才能工作? –

+0

只是包含循環中包含讀取輸入的代碼。即最後4行 –