草庐IT

java - 如何检查 double 值是否没有小数部分

这个问题在这里已经有了答案:Howtotestifadoubleisaninteger(18个回答)关闭8年前。我有一个double值,我必须在我的UI上显示它。现在的条件是double=0的十进制值,例如。-14.0在那种情况下,我必须在我的UI上只显示14个。此外,这里的字符数上限为5。eg.-12.34整数值不能大于2位,我们的double值也是如此。最好的方法是什么? 最佳答案 你可以这样做d%1==0检查doubled是否为一个整体。 关于java-如何检查double值是否没

java - 如何检查 double 值是否没有小数部分

这个问题在这里已经有了答案:Howtotestifadoubleisaninteger(18个回答)关闭8年前。我有一个double值,我必须在我的UI上显示它。现在的条件是double=0的十进制值,例如。-14.0在那种情况下,我必须在我的UI上只显示14个。此外,这里的字符数上限为5。eg.-12.34整数值不能大于2位,我们的double值也是如此。最好的方法是什么? 最佳答案 你可以这样做d%1==0检查doubled是否为一个整体。 关于java-如何检查double值是否没

php - 将以字符串形式呈现的指数数转换为小数

假设我有一个包含“7.2769482308e+01”的字符串(这个数字来自第3方软件,我无法控制格式)。将它转换成十进制的最便宜的方法是什么72.769482308?我能想到的唯一解决方案是拆分小数+指数部分并使用乘法。但是可能有一些构建它的功能来做同样的事情吗?注意:伙计们,是的,我读过ConvertexponentialtoawholenumberinPHP和Convertexponentialnumbertodecimalinphp.这些问题无关紧要,因为它们已经有了一个数字,但我有一个字符串。 最佳答案 简单转换为浮点值怎么

android - 去掉6位后的经纬度小数部分

我用这种格式得到纬度和经度纬度23.132679999999997,经度72.20081833333333但我想用这种格式纬度=23.132680和经度72.200818我怎样才能转换 最佳答案 doubleLatitude=23.132679999999997;intprecision=Math.pow(10,6);doublenew_Latitude=double((int)(precision*Latitude))/precision;这将只提供小数点后6位数字。 关于androi

ios - Swift - 如果小数等于 0,如何从 float 中删除小数?

我显示的距离只有一位小数,我想删除这个小数以防它等于0(例如:1200.0Km),我怎么能快速做到这一点?我正在这样显示这个数字:letdistanceFloat:Float=(currentUser.distance!asNSString).floatValuedistanceLabel.text=String(format:"%.1f",distanceFloat)+"Km" 最佳答案 swift3/4:vardistanceFloat1:Float=5.0vardistanceFloat2:Float=5.540vardist

PHP从数字字符串中删除小数

我有一个算法可以返回带小数点的数字(即“.57”)。我想做的只是得到没有小数点的“57”。我已经使用了eregi_replace和str_replace,但都没有用!$one=".57";$two=eregi_replace(".","",$one);print$two; 最佳答案 $one='.57';$two=str_replace('.','',$one);echo$two;行得通。100%测试。顺便说一句,所有ereg(i)_*功能都已贬值。如果您需要正则表达式,请改用preg_*。

Java获取 double 的前2位小数

我有一个巨大的double,我想从中获取前两位十进制数字作为float。这是一个例子:doublex=0.36843871floaty=magicFunction(x)print(y)输出:36如果您不明白,请随时提问。 最佳答案 您可以乘以100并使用Math.floor(double)喜欢inty=(int)Math.floor(x*100);System.out.println(y);我得到(请求的)36请注意,如果您使用float,那么您将得到36.0。 关于Java获取doub

c++ - 如何在不使用数组或循环的情况下找到第二个最小数

我尝试编写一个程序,从用户那里接收5整数并打印第二个最小数字。这是我尝试过的示例:#includeusingnamespacestd;intmain(){inta,b,c,d,e;cin>>a>>b>>c>>d>>e;if(a>b&&aa&&ba&&ca&&da&&e当我输入12345时,它会打印第二个最小值,但是当我输入54321屏幕上不会打印任何内容。我做错了什么?还有其他方法可以编写我的程序吗? 最佳答案 您的逻辑存在的问题是您没有强制自己只打印1项,并且至少打印1项。通过使用if/else语法的“else”部分,您将确保只能

c++ - 固定小数精度

这个问题在这里已经有了答案:HowcanIchangetheprecisionofprintingwiththestl?(2个答案)关闭7年前。我正在使用std::cout.precision(5);设置我的输出的小数精度。但是,我宁愿让我的输出总是输出5个小数位(现在它不会显示0)。我将如何更改我的代码以反射(reflect)这一点?

c# - Protobuf-net(反)小数序列化在使用自定义小数原型(prototype)合约(C#/C++ 互操作)时抛出

假设我想序列化,然后使用protobuf-net反序列化一个小数:constdecimaloriginalDecimal=1.6641007661819458m;using(varmemoryStream=newMemoryStream()){Serializer.Serialize(memoryStream,originalDecimal);memoryStream.Position=0;vardeserializedDecimal=Serializer.Deserialize(memoryStream);Assert.AreEqual(originalDecimal,deseria