【问题标题】:Nil is not compatible with expected argument type 'String'Nil 与预期的参数类型“字符串”不兼容
【发布时间】:2017-01-15 06:39:03
【问题描述】:

我目前正在将我的 swift 2.3 代码转换为 swift 3,并且在以下行出现上述错误:

setSharedPassword(nil, account: account, completion: completion)

适当的解决方案是否只是将 nil 替换为 ""?当我这样做时,错误就消失了。我正在寻找解释。请帮忙。

【问题讨论】:

  • 是的,如果将nil 替换为"",错误就会消失。该方法似乎需要密码 - 我假设不需要密码?
  • 这是你自己的个人功能吗?

标签: ios swift swift3


【解决方案1】:

如果您的setSharedPassword func 的第一个参数是String 类型,那么您将无法将其设置为nil,因为它不是可选的。如果您希望能够将其设置为 nil,那么您可以为您的 func 执行以下操作:

func setSharedPassword(string: String?, account: ...)

“”之所以起作用,是因为它仍然是一个字符串的值,只是一个没有字符的值。

当然,这个答案是假设这是你自己的函数。如果setSharedPassword 不是您的,那么您要么需要提供一个表示无密码的字符串,要么像以前一样提供""。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-07
    相关资源
    最近更新 更多