仅提取小数值以将 .Miles 转换为码

Extracting Decimal Value Only to Convert .Miles into Yards

我最近进入 Java 我想问一下如何只提取小数部分以便将其用于进一步的计算

我的代码基本上是把公里换算成英里,用户输入公里(所以数值不固定)

E.G 用户输入 6KM 将其转换为 3.728miles。我想提取 .728,这样我就可以将小数英里转换为码(例如 3 英里,大约 1281 码)。

我已经用
贬低了这个 int wholeMileConversion = (int)conversionOutput; 这给了我 3

但我不知道如何提取 JUST THE DECIMALS 以执行以下操作: wholeYardConversion = decimalOnlyValue * yards

不好意思,有空我再解释一下

试试这个:

double v = 3.287;
double decimalPart = v % 1;

% 是取余运算符。所以10 % 3 == 1。但它也适用于双打。
所以 2.5 % 1 的其余部分将是 .5 但请记住,由于 64 的宽度有限,双精度值不会完全像它们看起来的那样位,并且大多数十进制值都具有重复分量。 IE。他们没有有限的小数展开。