Закоменченная часть ниже (проверка) отлично справляется с условием задачи, что не так?
package com.javarush.task.task19.task1924;
import java.util.HashMap;
import java.util.Map;
import java.io.*;
/*
Замена чисел
*/
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) throws IOException, NumberFormatException, FileNotFoundException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
try (BufferedReader inStream = new BufferedReader(new FileReader(br.readLine()))) {
while(inStream.ready()) {
String result = "";
String line = inStream.readLine();
for(String sharedLine : line.split(" ")) {
try {
int number = Integer.parseInt(sharedLine);
if(number <= 12) {
for(Map.Entry<Integer, String> numbers : map.entrySet()) {
if(numbers.getKey() == number) {
result += numbers.getValue() + " ";
break;
}
}
}
continue;
} catch (NumberFormatException ex) {
result += sharedLine + " ";
continue;
}
}
System.out.println(result.substring(0, result.length() - 1) + System.lineSeparator());
}
}
br.close();
/* String text = "Это стоит 1 бакс, а вот это - 12 .";
String result = "";
for(String sharedLine : text.split(" ")) {
try {
int number = Integer.parseInt(sharedLine);
if(number <= 12) {
for(Map.Entry<Integer, String> numbers : map.entrySet()) {
if(numbers.getKey() == number) {
result += numbers.getValue() + " ";
break;
}
}
}
continue;
} catch (NumberFormatException ex) {
result += sharedLine + " ";
continue;
}
}
System.out.println(result.substring(0, result.length() - 1)); */
}
}