java里用Math.round怎么吧小数点后面的0去掉?

 我来答
育知同创教育
2017-04-19 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
展开全部

可参考如下代码:

String s = "111.01100";
if(s.indexOf(".") > 0){
  //正则表达
  s = s.replaceAll("0+?$", "");//去掉后面无用的零
  s = s.replaceAll("[.]$", "");//如小数点后面全是零则去掉小数点
}
System.out.println(Math.round(s));

JAVA API解释如下:

public static long round(double a)  
returns the closest long to the argument. the result is rounded to an integer by adding 1/2, taking the floor of the result, and casting the result to type long. in other words, the result is equal to the value of the expression:

返回最接近参数的 long。结果将舍入为整数:加上 1/2,对结果调用 floor 并将所得结果强制转换为long 类型。换句话说,结果等于以下表达式的值:

(long)Math.floor(a + 0.5d)

特殊情况如下:

如果参数为 NaN,那么结果为 0。

如果结果为负无穷大或任何小于等于 Long.MIN_VALUE 的值,那么结果等于Long.MIN_VALUE 的值。

如果参数为正无穷大或任何大于等于 Long.MAX_VALUE 的值,那么结果等于Long.MAX_VALUE 的值。


参数:

a - 舍入为 long 的浮点值。

返回:

舍入为最接近的 long 值的参数值。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hyt0114
2011-09-20 · TA获得超过276个赞
知道答主
回答量:207
采纳率:0%
帮助的人:197万
展开全部
(int)(Math.round(333.33333));
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友ea8f119
2011-09-20 · 超过20用户采纳过TA的回答
知道答主
回答量:194
采纳率:0%
帮助的人:68.5万
展开全部
强转为整型......
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
CrazySunSky
2011-09-20 · 超过25用户采纳过TA的回答
知道答主
回答量:153
采纳率:0%
帮助的人:52.2万
展开全部
你在转换一下成整型不久没有后面的0了么。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式