之前曾问过这个问题(Formatting Decimal Number),但没有回答如何显示而不显示小数。我一直在寻找小时无济于事的答案。提前致谢!

例:

    System.out.println("It would take " + oneMileMins + " minutes and " + oneMileDfSecs.format(oneMileSecs) + " seconds for the person to run one mile.");


哪个输出:
该人跑一英里需要x分钟和.yy秒。

我希望.yy只是yy

最佳答案

只需将您的输出更改为oneMileDfSecs.format(oneMileSecs).replace(".", "")

编辑:罗德尼说“ He did not ask for the proper equation he only asked how to remove the decimal.”,所以我删除了以下内容,以尊重他。

补充说明:

就像@Alan所说的,oneMileSecs应该等于(int)((oneMile % 1)*60),在这种情况下,删除小数点的方式有点不同:

1)。如果您声明:

double oneMileSecs = (int)((oneMile % 1)*60)

然后将输出更改为:

String.valueOf(oneMileSecs).substring(0,String.valueOf(oneMileSecs).indexOf("."))

2)。如果您声明:

int oneMileSecs = (int)((oneMile % 1)*60)

然后直接输出oneMileSecs,因为它是int,它不会产生十进制符号

10-05 18:26