字符串格式化潜在的字符串双精度或整数到整数

String formatting potential string doubles or integer into integers

我从服务器收到一个字符串,该字符串有时是双精度数,有时是整数。我需要它是一个整数。 当我做 Integer.parseInt(confusedStringNumber) 如果它是一个双精度数,它会抛出一个数字格式异常。有没有办法格式化字符串以删除所有小数位,无论它们是否存在?谢谢

int i = (int)Float.parseFloat("1.0");
int j = Float.valueOf("1.0").intValue();

参考以下类型和方法,可以满足您的需求: https://docs.oracle.com/javase/8/docs/api/java/text/DecimalFormat.html https://docs.oracle.com/javase/8/docs/api/java/math/BigDecimal.html#round-java.math.MathContext-