arrays - 字符数组到 Swift 中的字符串

标签 arrays swift

目前 [Character] 数组的输出是:

["E", "x", "a", "m", "p", "l", "e"]

应该是:

Example

可能是"在数组中,像这样:"""。该输出应为 "

谢谢!

最佳答案

其他答案涵盖了您的数组是 String 元素之一的情况(这里很可能是这种情况:因为您没有向我们提供数组的类型,我们可以使用 Swift 自己的类型推断规则来推测类型推断为 [String])。

如果您的数组元素实际上是 Character 类型,您可以使用 Character sequence initializer of String直接:

let charArr: [Character] = ["E", "x", "a", "m", "p", "l", "e"]
let str = String(charArr) // Example

W.r.t.您在下面的评论:如果您的示例数组出于某种原因是 Any 元素之一(显式使用通常不是一个好主意,但有时在从某些外部源接收数据时会出现这种情况),在将转换后的元素连接到单个 String 实例之前,您首先需要尝试将每个 Any 元素转换为 String 类型。转换后,您将使用 String 元素数组,在这种情况下,其他答案中显示的方法将是适当的连接方法:

// e.g. using joined()
let arr: [Any] = ["E", "x", "a", "m", "p", "l", "e"]
let str = arr.flatMap { $0 as? String }.joined()
print(str) // example

您当然也可以(尝试)将 Any 元素转换为 Character 元素,但即使在这种情况下,您也必须通过 String > 实例,这意味着对于 [Any] 情况,上面的 joined() 替代方案优于下面的替代方案:

let arr: [Any] = ["E", "x", "a", "m", "p", "l", "e"]
let str = String(arr.flatMap { ($0 as? String)?.characters.first })
print(str) // example

关于arrays - 字符数组到 Swift 中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40597189/

相关文章:

javascript - 获取 sql 结果作为嵌套 json 对象

arrays - 如何使用函数式编程将字典转换为 IndexPath 数组?

javascript - 动态翻页功能 - vanilla javascript

java - 检查一个数字是否在二维数组中,并打印它所在的行

swift - 使用 swift 停止 SpriteKit 中的 Action

ios - HKAnchoredObjectQuery 无法在后台可靠地返回

swift - 展开 viewForKey(UITransitionContextFromViewKey) 时为零 (Swift)

ios - 如何调配 Swift.print(项目 :separator:terminator)

javascript - 如何唯一合并两个 JSON 文件?

ios - 从 .scn 文件加载后无法在 ARKit 场景中查看几何体