Parse number with NumberFormat and Locale
import java.text.NumberFormat; import java.util.Locale; public class Main { public static void main(String[] argv) throws Exception { Number number = NumberFormat.getCurrencyInstance(Locale.GERMANY).parse("$123.45"); if (number instanceof Long) { System.out.println("Long value"); } else { System.out.println("Double value"); } } }