仅提取小数值以将 .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。他们没有有限的小数展开。
我最近进入 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。他们没有有限的小数展开。