Nil is incompatible with return type ...

来源:互联网 发布:网络基础知识教程视频 编辑:程序博客网 时间:2024/06/05 23:35

swift中不能直接将 nil 做为 返回值或者参数

返回值或者参数的类型必须是对应的

当想让 nil 做为参数的时候 需要用到  optional types 可选类型

在不使用optional的情况下

声明函数:

    func dosome(name:String) {
        print(name)
    }

调用函数:

self.dosome(nil)   此时会有 Nil is incompatible with return type ... 的错误提示 

但是 参数类型的头面添加?号   就能使用nil了    但是下面的方法仍然是不对的

    func dosome(name:String?) {
        print(name)
    }

self.dosome(nil)


最终写法      使用可选类型的时候 需要拆包  之所以要拆包使用,是因为Optional类型其实是一个枚举

    func dosome(name:String?) {
        if let aname = name {
            print(aname)
        }else {
            print("没有值")
        }
    }

        self.dosome(nil)





0 0
原创粉丝点击