ちカマ 2022-10-19 11:30 采纳率: 50%
浏览 22
已结题

用Math.round()算的结果不理解

问题遇到的现象和发生背景

用Math.round()算出比结果多100倍

运行结果及报错内容

img

我的解答思路和尝试过的方法

System.out.println(capital+Math.round(capital*0.0035));的结果就很正常

这个前面加了段字符串,结果就多了100倍
System.out.println("活期1年本金总计:"+capital+Math.round(capital*0.0035));

我想要达到的结果

为什么这样子?

  • 写回答

3条回答 默认 最新

  • 於黾 2022-10-19 11:36
    关注

    你要把本金和后面的round用括号括起来
    否则字符串+int,会将int隐式转换为字符串,然后执行字符串拼接,结果还是个字符串
    那么本金被当做字符串之后,后面的round会继续被当做字符串拼接在后面

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 10月27日
  • 已采纳回答 10月19日
  • 创建了问题 10月19日