我想从123456789.1234中获得123456789.12值
如果我使用字符串,它将使用解析逻辑直接工作。我不想返回String。要求是返回Long。
这里我想要输出Long类型而不是string ..有人可以帮我这个吗?
答案 0 :(得分:3)
Long是整数类型,因此不能包含小数。
尝试使用Long.parseLong将导致NumberFormatException
。
您还需要使用处理比例的表示。
答案 1 :(得分:0)
尝试这个以获得长输出:
String str = "123456789.1234";
BigInteger num = new BigInteger(str);
return num.longValue();
尝试使用浮点输出:
String str = "123456789.1234";
BigDecimal num = new BigDecimal(str).setScale(2, BigDecimal.ROUND_HALF_UP);
return num.floatValue();
答案 2 :(得分:0)
您想要退回的号码不是Long.You可以返回double或float.Also您可以使用
DecimalFormat df = new DecimalFormat("#.##");
String stringDouble = df.format(yourDouble);;