一个非常奇怪的String转换错误

时间:2016-05-30 12:31:35

标签: swift

我正在用这个标签创建视图数组:

0.1, 0.2 , 0.3, 0.4 ...... 20

这样:

        var time = 0.1
         for k in 0..<200
        {
              //........
            item.text = String(time) //*** here is the problem 

            time+=0.1

当它达到 6 时,我会在标签上看到:

5.5 , 5.6 , 5.7 , 5.8 , 5.9, 5.99999,6.099999,6.199999

10.1 10.2 ,etc

上恢复正常

特别关于6? :)

1 个答案:

答案 0 :(得分:3)

您可以尝试使用有限数量的小数进行强制转换,将time声明为浮点数并将其添加为浮点数:

var time = 0.1f
...

item.text = String(format:"%.1f", time)
time += 0.1f