首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Swift:如何处理聊天类

Swift:如何处理聊天类
EN

Stack Overflow用户
提问于 2015-08-17 09:42:00
回答 1查看 38关注 0票数 0

我的问题是非常基本的,因为我马上就要学得很快了。

我写了这个函数

代码语言:javascript
复制
    func checkIfChatExistsLocal(username:String) -> Bool {

    var result = [Chats]()

    let fetchRequest = NSFetchRequest(entityName: "Chats")
    fetchRequest.fetchLimit = 1
    let userPredicate = NSPredicate(format: "username = '\(username)'")
    fetchRequest.predicate = userPredicate
    result = try! self.context.executeFetchRequest(fetchRequest) as! [Chats]

    if result == nil {
        print("nil")
        return false
    } else {
        let rresult = result[0].username
        return true
    }
    print("Result \(rresult)")

}

if部分是错误的,我基本上知道原因(因为result[Chats]类型的),这就是我理解问题的地方:

如何处理result

使用result = .... as! [Chats],我将result声明为数组(?)类型为Chats,它是类(?) -那么是一个类数组?

顺便说一句,Chats.swift是:

代码语言:javascript
复制
@objc(Chats)
 class Chats: NSManagedObject {

     // Insert code here to add functionality to your managed object subclass

 }

使用

代码语言:javascript
复制
extension Chats {

     @NSManaged var username: String?

}

因此,首先(帮助我)如何修复我的代码以使其运行?

第二,我应该巩固“学习快速”的哪一部分来处理result = .... as! [Chats]

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-08-17 11:19:23

根据您声明的要求,您不应该使用executeFetchRequest,而应该使用countForFetchRequest。现在您根本不需要担心一系列的项目,只需检查数字并使用它来决定返回什么:

代码语言:javascript
复制
return (count > 0)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32047202

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档