当前位置: 首页 > 知识库问答 >
问题:

显示。Swift[重复]中舍入数字后为0

潘秦斩
2023-03-14

我用Swift中的double做了一个计算器。问题是,当我显示结果时,它会显示出来。即使是整数,最后也为0。我已经尝试了round()函数,但由于它是一个双精度函数,所以它似乎总是显示出来。0 . 在Objective-c中,我通过键入:

[NSString stringWithFormat:@”%.0f”, RunningTotal]; //RunningTotal being the outcome

在这种情况下,根本不会有小数,例如,如果有@"%.3f"。

有人知道如何用swft做到这一点吗?我在不同的论坛上找了找,但到处都找不到...谢谢!

共有1个答案

卢志强
2023-03-14

你可以在Swift中做同样的事情。

let runningTotal = 12.0
let string = String(format:"%.0f", runningTotal)
println(string) // Output: 12

通常,这会将浮点数舍入到下一个整数。

也可以使用%g格式,因为它不会打印小数点后的尾随零,例如:

String(format:"%g", 12.0) // 12
String(format:"%g", 12.3) // 12.3

有关更高级的转换,请查看NSNumberForware

 类似资料:
  • 我需要用C编写一个程序,该程序执行以下操作: 编写一个程序,这样当用户输入一个浮点数时,它将该数字四舍五入到小数点后3位。显示结果时,显示小数点后5位,这意味着小数点后第4位和第5位数字都将为0。 如何将其四舍五入到小数点后3位,然后显示两个零?我不允许使用任何类型的数学库函数。

  • 除了重写当前进行字符串转换的方法外,还有什么好方法可以将其双精度/字符串表示形式四舍五入到小数点后3位?

  • 我在接受hackerrank的挑战。目的是: 读取(int)N;然后读取N个整数并将其平均值打印到小数点后三位。 这是代码: 当我为一些输入运行代码时: 3#(N的值) 4#(N=3个整数) 4 3 那么输出是3.666,但应该是3.667。 所以问题是,到底是有什么方法可以使它正确(正确的四舍五入),还是它只能这样工作? (当上述代码在hackerrank为挑战的Testcase2运行时,问题就

  • 我有这个: 我想给这个方法传递一个浮点值,四舍五入到一个小数位,将其转换为字符串,然后返回它。目前,这对数字没有任何影响。 会更有效吗?我是C语言的新手。

  • 我是java编程新手。我想把价格四舍五入到小数点后2位,再加上5的倍数。 如。 保持不变 我尝试了提供的重复项,但它们只出现在小数点后1位。例如。to。 这是我的代码: 我在这个网站上查阅了专家们的其他模型答案,但没有一个真正回答了我的问题。设置为小数点后两位,我使用的是。我知道,但是把数字四舍五入,比如说38.83到38.85,38.87到38.90是我真正想要的。这是我国正在使用的四舍五入制度

  • 目前,我正在使用以下代码来格式化“值”常量: 我得到的结果是2366.34,但我希望它是0.05的倍数。在这种情况下,它应该是2366.35。 最好的方法是什么?