swift - Xcode6 beta 4 向下 float

标签 swift xcode6

我有一个带有StringAnyObjectDictionary,所以[String: AnyObject]

在一个函数中,我想检查字典值的类型。所以这段代码在 Xcode6-Beta 3 中有效:

for (key, value: AnyObject) in contents {
    ...
    } else if value is Float {
        stringValue = String(value as Float) + "," 

现在我得到错误:AnyObject is not conversionble to Float

stringValue = String(Float(value)) + "," 也不起作用。

有什么想法吗?

最佳答案

AnyObject 转换为Float 没有问题。

AnyObject 转换为 Float 没有问题,因为您可以看到下面的指令将毫无错误地执行。

   var f:Float = value as Float

因为 swift String 没有 intializer 来转换为 Float 如果你这样做了

 var str:String = String(f) //This will show error as swift has no intializer for Float

但是Swift只为IntString中添加了初始化器,可以直接转换。Float没有初始化器。

   var i:Int = value as Int
   var str:String = String(i) //this will run fine

现在你可以解决你的问题

    for (key, value: AnyObject) in contents {
        if(value is Int){
        }else if value is Float {
            //Take this in var and use
            var stringValue = "\(value as Float),"
        }
    }

将来 swift 可能会为 Float 添加初始化器,但目前还没有初始化器。

关于swift - Xcode6 beta 4 向下 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25003264/

相关文章:

ios - 当显示 UIAlertViewController 时,Viewcontroller 将另一个 View Controller 显示为背景层?

ios - 每 n 天安排一次本地通知(时区安全)

ios8 - Xcode 6 中缺少前缀文件

ios - swift void SendDelegateMessage.. webView :decidePolicyForNavigationActionfailed to return after waiting 10 seconds. .. kCFRunLoopDefaultMode

ios - setNavigationBarHidden :NO is appearing when dismissed

ios - 使用 dispatch_group_notify 的快速异步请求不起作用

swift - 如何将 subview 添加到所有 UITable 单元格

swift - 在 SwiftUI 中使用 @State 时截屏不起作用

xcode6 swift NSObject AnyObject 错误

ios - Xcode 6 中的配置文件问题(重复)