Причина в том, что условия не в указаном порядке выполнены?
package com.javarush.task.task15.task1519;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.util.Scanner;
/*
Разные методы для разных типов
*/
public class Solution {
public static void main(String[] args) throws IOException {
//напиште тут ваш код
Scanner scr = new Scanner(System.in);
while (true){
String stroka = scr.nextLine();
String sub = ".";
if (stroka.indexOf(sub) != -1){
Double numDouble = Double.parseDouble(stroka);
print(numDouble);
}else if((stroka.matches("[a-zA-Z]+") == true || stroka.equals("")) && !stroka.equals("exit")) {
print(stroka);
}else if (stroka.equals("exit")){
break;
} else if (Integer.parseInt(stroka) > 0 && Integer.parseInt(stroka) < 128){
Short numShort = Short.parseShort(stroka);
print(numShort);
}else if(Integer.parseInt(stroka) == 0 || Integer.parseInt(stroka) >= 128){
Integer numInt = Integer.parseInt(stroka);
print(numInt);
}else {
}
}
}
public static void print(Double value) {
System.out.println("Это тип Double, значение " + value);
}
public static void print(String value) {
System.out.println("Это тип String, значение " + value);
}
public static void print(short value) {
System.out.println("Это тип short, значение " + value);
}
public static void print(Integer value) {
System.out.println("Это тип Integer, значение " + value);
}
}