Core data 如何在非void函数中返回nil对象-swift 2.1?
这是我的代码,它给了我一个错误Core data 如何在非void函数中返回nil对象-swift 2.1?,core-data,swift2,Core Data,Swift2,这是我的代码,它给了我一个错误 class Table_Users: NSManagedObject { class func getUserFromUserID(userID:String)->Table_Users { var user:Table_Users? = nil if let delegate = UIApplication.sharedApplication().delegate as? AppDelegate
class Table_Users: NSManagedObject {
class func getUserFromUserID(userID:String)->Table_Users
{
var user:Table_Users? = nil
if let delegate = UIApplication.sharedApplication().delegate as? AppDelegate
{
let moc = delegate.managedObjectContext
}
else
{
}
return user
}
}
它说我不能在非void函数中返回nil值
我还能还什么。或者我应该如何以另一种方式编写此函数
使用
return user!
这不是我的选择。因为我已经读到,若object的值为nil,它将崩溃。将“?”与函数的返回类型一起使用 将“class func getUserFromUserID(userID:String)->表用户”替换为“class func getUserFromUserID(userID:String)->表用户?” 更新代码:
class Table_Users: NSManagedObject {
class func getUserFromUserID(userID:String)->Table_Users?
{
var user:Table_Users? = nil
if let delegate = UIApplication.sharedApplication().delegate as? AppDelegate
{
let moc = delegate.managedObjectContext
}
else
{
}
return user
}
}
将“”与函数的返回类型一起使用 将“class func getUserFromUserID(userID:String)->表用户”替换为“class func getUserFromUserID(userID:String)->表用户?” 更新代码:
class Table_Users: NSManagedObject {
class func getUserFromUserID(userID:String)->Table_Users?
{
var user:Table_Users? = nil
if let delegate = UIApplication.sharedApplication().delegate as? AppDelegate
{
let moc = delegate.managedObjectContext
}
else
{
}
return user
}
}
func getUserFromUserID(userID:String)->表用户?@swiftBUTCHER:是的,这就是我需要的。您可以添加一个答案,这样我就可以接受func getUserFromUserID(userID:String)->Table_Users?@swiftBUTCHER:是的,这就是我需要的。你可以添加一个答案,这样我就可以接受了