无法调用类型的初始化程序:使用类型为“(_Element)”的参数列表

Posted

技术标签:

【中文标题】无法调用类型的初始化程序:使用类型为“(_Element)”的参数列表【英文标题】:Cannot invoke initializer for type: with an argument list of type '(_Element)' 【发布时间】:2016-09-02 19:50:31 【问题描述】:

我是 Swift 的新手。我正在尝试将字符串转换为字符数组,并且我想要字符的整数值。这是我的代码:

var string = "1234"
var temp  = Array(string.characters)
var o = Int(temp[0])

但在第 3 行,我遇到了错误。这段代码有什么问题? 请帮帮我

【问题讨论】:

感谢您的帮助 【参考方案1】:

您需要将 Character 映射到 String,因为 Int 没有 Character 初始化程序。 您还可以将字符数组映射到字符串数组

var temp  = string.characters.map(String.init)

或在初始化 var 时将字符转换为字符串

var o = Int(String(temp[0]))

斯威夫特 4

let string = "1234"
let temp  = string.map(String.init)
let o = Int(temp[0])

【讨论】:

以上是关于无法调用类型的初始化程序:使用类型为“(_Element)”的参数列表的主要内容,如果未能解决你的问题,请参考以下文章

无法使用类型为“(数字)”的参数列表调用类型“Int”的初始化程序

无法使用类型为“(UInt32)”的参数列表调用类型“CGBitmapInfo”的初始化程序

无法使用类型为 [重复] 的参数列表调用类型“NSAttributedString”的初始化程序

如何解决错误:无法调用类型为 `......` 的参数列表类型为 `...` 的初始化程序?

无法调用类型的初始化程序:使用类型为“(_Element)”的参数列表

无法使用类型为“(数组:[NSData?])”的参数列表调用类型“NSSet”的初始化程序