相关疑难解决方法(0)

Swift:过滤字典

我想在swift中过滤字典:

var data: [String: String] = [:]
data = data.filter { $0.1 == "Test" }
Run Code Online (Sandbox Code Playgroud)

上面的过滤器代码在swift 2下编译但产生以下错误:

无法将类型'[(String,String)]'的值赋给类型'[String:String]'的值

这是swift编译器中的一个错误,还是这不是在swift中过滤字典的正确方法?

非常感谢你提前!

ios swift

51
推荐指数
3
解决办法
4万
查看次数

在Swift中过滤字典数组

我有一个带字典的数组示例:

(
        {
        Email = "kate-bell@mac.com";
        Name = "Kate Bell";
        Number = "(555) 564-8583";
    },
        {
        Email = "d-higgins@mac.com";
        Name = "Daniel Higgins";
        Number = "555-478-7672";
    }
)
Run Code Online (Sandbox Code Playgroud)

我想根据密钥"名称"过滤这个字典

 func searchBar(searchBar: UISearchBar, textDidChange searchText: String) {
    let predicate = NSPredicate(format:"Name == %@", searchText)
    let filteredArray = (arrContact as NSMutableArray).filteredArrayUsingPredicate(predicate)
    print(filteredArray)
    if(filteredArray.count == 0){
                searchActive = false;
            } else {
                searchActive = true;
            }
            tblData.reloadData()
 }
Run Code Online (Sandbox Code Playgroud)

我总是从上面的swift代码得到空数组.请帮我解决这个问题.谢谢

nsmutablearray uisearchbar nsmutabledictionary nspredicate swift2

4
推荐指数
2
解决办法
1万
查看次数