2015-11-04 2 views
0

Это мой код:Не удается найти символ System.console(). ReadInt();

import java.io.PrintWriter; 
import java.io.FileNotFoundException; 

public class Main { 
public static void main(String[] args) throws FileNotFoundException { 

    String enter = "Enter"; 
    String resolve = "Resolve"; 
    String store = "Store"; 

    // if file doesn't exist 
    int nextjob = 1; 
    int jobnumber = nextjob; 
    int phonenumber = System.console().readInt(); 
    int numberoflines = System.console().readInt(); 
    String problem = System.console().readLine(); 
    int time = System.console().readInt(); 

    String command = System.console().readLine(); 
    if(command.equals(store)){ 
     PrintWriter writer = new PrintWriter("openjobs.txt"); 
     writer.println(nextjob); 
     writer.println(jobnumber); 
     writer.println(phonenumber); 
     writer.println(numberoflines); 
     writer.println(problem); 
     writer.println(time); 
     writer.close(); 
    } 
    } 
} 

Это выход:

Main.java:14: error: cannot find symbol 
     int phonenumber = System.console().readInt(); 
             ^
symbol: method readInt() 
location: class Console 
+3

Метод 'readInt()' в классе 'Console' отсутствует. Что ты хочешь делать? Вы хотите прочитать ввод пользователя? – Tunaki

+0

Есть ли способ сказать readInt()? Наверное, нет. – Saurabh

+0

Я хочу читать пользовательский ввод как int, например readLine(). – Lexhanatin

ответ

3

Scanner Использование и Scanner.nextInt() метод брать только Integer в качестве входных данных от пользователя.

Scanner sc = new Scanner(System.in); 
int phonenumber = sc.nextInt(); 

Если пользователь дает вход, который не является целым числом, то будет сгенерировано InputMismatchException.

Смежные вопросы