【问题标题】:get round numbers between 0 to 1获取 0 到 1 之间的整数
【发布时间】:2017-07-19 06:47:09
【问题描述】:

我有 UISlider 产生 0 到 1 之间的数字,

0.0590829
0.0643739
..

我想得到它们之间的四舍五入,比如:

0.1
0.2
0.3
...
1.0

找到 this(在 c 中):

float x = arc4random() % 11 * 0.1;

但它不能在 swift 上运行

var x = arc4random() % 11 * 0.1;
//error: binary operator '*' cannot be applied to operands of type 'UInt32' and 'Double'

谢谢

【问题讨论】:

  • 不知道为什么人们将其投票为“太宽泛”。显然缺乏努力。
  • 你的代码在哪里?你试过什么?不要只要求人们为您完成工作。如果您展示您的尝试,并证明您已经花时间尝试帮助自己,您将获得更多更好的答案。见How to Ask
  • @AshleyMills 你是完全正确的,固定

标签: swift3


【解决方案1】:
  • 乘以 10 得到 0.0 到 10.0 之间的值
  • 四舍五入去掉小数
  • 除以 10

例子:

let values = [0, 0.0643739, 0.590829, 0.72273, 1]

for value in values {
    print("\(value) -> \(round(value * 10) / 10)")
}

// 0.0 -> 0.0
// 0.0643739 -> 0.1
// 0.590829 -> 0.6
// 0.72273 -> 0.7
// 1.0 -> 1.0

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-11
    • 2023-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多