从AnyObject(NSString)获取String

  发布于 2023-01-12 08:22

我正在读一个plist键(NSArray和n NSDictionaries):

    let regionsToMonitor = NSBundle.mainBundle().infoDictionary["Regions"] as Array>

现在我迭代它:

    for regionToMonitor in regionsToMonitor {

现在我想得到regionToMonitor的uuidString

在ObjC: NSString *uuidString = regionToMonitor[@"uuidString"];

在swift我尝试: let uuidString = regionToMonitor["uuid"]!.stringValue;

以上编译但字符串始终nil处于快速状态.regionToMonitor["uuid"]没有时使用!.stringValue可以正常工作println

我如何在这里获得有效的Swift.String?

我想把它传递给NSUUID!


我也试过了

let uuidString:String = regionToMonitor["uuid"]
=> AnyObject不能转换为String

let uuidString = regionToMonitor["uuid"] as String
=>找不到接受提供的参数的'下标'的重载

let uuidString = regionToMonitor["uuid"];
>'AnyObject?' 不能隐含地向下转换为'String'; 你的意思是用'as'强迫低垂?

2 个回答
  • 我发现这对我有用

    var uuidString: String? = regionToMonitor["uuid"] as AnyObject? as? String
    

    编辑:这是一个较旧的swift版本的答案

    请使用接受的答案.

    2023-01-12 08:26 回答
  • 我结束了丑陋的界限:

    var uuidString:String = regionToMonitor["uuid"] as! String
    

    没有警告,没有错误,没有运行时错误

    2023-01-12 08:27 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有