Дело в том что проверку на число я тупо скопировал из последней задачи. Почему там оно синтаксически верное а тут уже нет? Что ето вообще значит?
package com.javarush.task.task09.task0921;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
/*
Метод в try..catch
*/
public class Solution {
public static void main(String[] args) {
readData();
}
public static void readData() throws Exception {
//напишите тут ваш код
try {BufferedReader reader =new BufferedReader(InputStreamReader(System.in));
ArrayList<String> array = new ArrayList <>() ;
String s =reader.readLine() ;
if (isNumber(s)) array.add(s) ;
if (isNumber(s)==false) throw new Exception();
}
catch (Exception e) {
for(int i=0; i < array.length(); i++) {
System.out.println(array.get(i)) ;
}
}
public static boolean isNumber(String s) {
if (s.length() == 0) {
return false;
}
char[] chars = s.toCharArray();
for (int i = 0; i < chars.length; i++) {
char c = chars[i];
if ((i != 0 && c == '-') // Строка содержит '-'
|| (!Character.isDigit(c) && c != '-') // или не цифра и не начинается с '-'
|| (chars.length == 1 && c == '-')) // или одиночный '-'
{
return false;
}
}
return true;
}
}
}