Вроде бы условие выполняется согласно требованиям, но валидатор ругается, строчка 0 1 2 3 4 5 6 7 8 9 10 11 12 в файле распознается корректно.
package com.javarush.task.task19.task1924;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/*
Замена чисел
*/
public class Solution {
public static Map<Integer, String> map = new HashMap<Integer, String>();
static {
map.put(0,"ноль");
map.put(1,"один");
map.put(2,"два");
map.put(3,"три");
map.put(4,"четыре");
map.put(5,"пять");
map.put(6,"шесть");
map.put(7,"семь");
map.put(8,"восемь");
map.put(9,"девять");
map.put(10,"десять");
map.put(11,"одиннадцать");
map.put(12,"двенадцать");
}
public static void main(String[] args) {
try (BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
BufferedReader bufferedReader = new BufferedReader(new FileReader(reader.readLine()))){
List<String[]> list = new ArrayList<>();
while (bufferedReader.ready()) {
list.add(bufferedReader.readLine().split(" "));
}
for (int i = 0; i < list.size(); i++) {
for (int l = 0; l < list.get(i).length; l++) {
try {
if (map.containsKey(Integer.parseInt(list.get(i)[l]))) {
list.get(i)[l] = map.get(Integer.parseInt(list.get(i)[l]));
}
} catch (NumberFormatException e) {
}
}
}
for (String[] s : list) {
for (String k : s) {
System.out.print(k + " ");
}
System.out.println();
}
}
catch (IOException e) {
e.printStackTrace();
}
}
}