Тестировал на след строках
Это стоит 1 бакс, а вот это - 12 .
Это стоит 2 бакса, а вот это - 13 .
Это стоит 3 бакса, а вот это - 14 .
Это стоит 4 бакса, а вот это - 15 .
Это стоит 5 баксов, а вот это - 16 .
Это стоит 6 баксов, а вот это - 17 .
Это стоит 7 баксов, а вот это - 18 .
Это стоит 8 баксов, а вот это - 19 .
Это стоит 10 баксов.
Переменная имеет имя file1.
110 - это число.
тест 91 тест
1 2 3 4 5 и еще 25
идеально подставляет слова вместо цифр 0-12 согласно заданию, но не хочет проходить валидацию, помогите разобраться
package com.javarush.task.task19.task1924;
import java.io.*;
import java.util.ArrayList;
import java.util.HashMap;
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) {
String fileName = "";
try (BufferedReader br = new BufferedReader(new InputStreamReader(System.in))) {
fileName = br.readLine();
} catch (IOException e) {
}
String line = "";
try (BufferedReader br2 = new BufferedReader(new FileReader(fileName))) {
while ((line = br2.readLine()) != null) {
String[] splitLine = line.split(" ");
StringBuilder result = new StringBuilder();
for (String el : splitLine) {
if (el.matches("\\b(1?\\d)\\b")) {
result.append(map.getOrDefault(Integer.parseInt(el), el)).append(" ");
}
else result.append(el).append(" ");
}
System.out.println(result.toString());
}
} catch (IOException e) {
}
}
}