Основная функция try-with-reource
предназначена для автоматического закрытия ресурса - это не требуется для System.in
, поэтому используйте обычный оператор try-catch
, например:
public Player readPlayerData() {
Player player = new Player();
try {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("What is your name?");
player.setName(br.readLine());
System.out.println("How much money do you have?");
player.setBalance(BigDecimal.valueOf(Double.parseDouble(br.readLine())));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(player);
return player;
}
( не проверено, просто пример, чтобы показать, как это выглядит)
(в конечном итоге лучше, чтобы метод генерировал исключение вместо его обработки)