我创造了我的变量如下不能调用为float类型初始化与类型的参数(任意)
var unitTwo: Any
然后在我的脚本我运行的返回类型的任何值的函数。
该值可以是int,String或浮动 例如:0,0.0或“00:00:00”
unitTwo = returnTextFieldType(unitOneType: unitOneType, unitTwoType: unitTwoType).two
如果它是一个字符串添加到我的记录功能可以将字符串之前被转换为整数。 (秒数)
再后来,我需要检查的纪录,但在我的功能,它必须是一个浮动
let newRecord = self.checkIfBetterRecord(unitTwo: Float(unitTwo), unitOne: Float(unitOne), unitTwoType: unitTwoType, unitOneType: unitOneType)
,但我得到
不能调用为float类型初始化与 类型(任何)
的说法我也试图与unitTwo as! Float
但我的应用程序崩溃向下转型也和不要让我这样做。
我该如何解决这个问题?
感谢
'这个值可以是int,String或浮动前:0,0.0或 “0”'为什么不用'NSNumber'这样的东西呢?该类是任何数值的包装,并提供一个int,float或string访问器。 – JAL
我忘了提,我刚刚在我的帖子中编辑过,字符串也可以是“00:00:00” – Pierre
这样的行不通。 ''00:00:00''你期望哪个浮点值?这不是有效的浮点格式。一个'Any'类型总是最糟糕的方式。使用更具体的类型或(创建)通用协议。 – vadian