添加未知类型的数量

时间:2012-06-27 17:05:14

标签: java parsing number-formatting

我正在尝试解析并将2个数字加在一起,我不知道它们是哪个类型(int,float等),并且我试图将结果存储在最合适的类型中。例如,如果我得到2个整数,我希望结果是一个int,但如果我得到一个int和一个double,我希望结果是一个double。我该怎么做呢?

我的一个想法是首先尝试解析为int,然后是long,然后是float,...以查看它是哪种类型。有没有更好的方法来做到这一点,而不是尝试/捕获NumberFormatExceptions?

例如:

String number1 = "5";
String number2 = "3.4";

Object answer = add(number1, number2);

add()会是什么样的?

2 个答案:

答案 0 :(得分:4)

我会将所有内容视为doubleBigDecimal。这比尝试找到“最佳”类型更简单,也可能更有效。

答案 1 :(得分:1)

如果您确定数字有效(例如其中没有特殊符号),那么我会在输入中搜索点(.)。如果我找到一个点,我会将其解析为double;如果不是,请int