ios - 如何将 Swift 数组转换为字符串?

标签 ios arrays swift

我知道如何以编程方式执行此操作,但我确信有一种内置方式...

我使用的每种语言都有某种默认的对象集合文本表示,当您尝试将数组与字符串连接或将其传递给 print() 函数等时,它会吐出这些对象集合。 Apple 的 Swift 语言有一种内置的方法可以轻松地将数组转换为字符串,或者我们在对数组进行字符串化时是否总是必须明确?

最佳答案

如果数组中包含字符串,可以使用Stringjoin方法:

var array = ["1", "2", "3"]

let stringRepresentation = "-".join(array) // "1-2-3"

Swift 2 中:

var array = ["1", "2", "3"]

let stringRepresentation = array.joinWithSeparator("-") // "1-2-3"

如果您想使用特定的分隔符(连字符、空白、逗号等),这会很有用。

否则,您可以简单地使用 description 属性,它返回数组的字符串表示形式:

let stringRepresentation = [1, 2, 3].description // "[1, 2, 3]"

提示:任何实现Printable 协议(protocol)的对象都有一个description 属性。如果您在自己的类/结构中采用该协议(protocol),您也可以使它们打印友好

Swift 3

  • join 变成joined,例子[nil, "1", "2"].flatMap({$0}).joined()
  • joinWithSeparator 变为 joined(separator:)(仅适用于字符串数组)

Swift 4

var array = ["1", "2", "3"]
array.joined(separator:"-")

关于ios - 如何将 Swift 数组转换为字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25827033/

相关文章:

javascript - 如何在 iOS/Android 上的浏览​​器中检测从 sleep 中唤醒?

ios - UIButton 关闭 UIView

c - 二维数组,其中每行都有不同类型的结构指针

xcode - 如何在联系人体内使用 node.name?

ios - 如何在不降低分辨率的情况下降低 UIImage 的质量?

ios - PushNotifications 在 iOS 中无法正常(可靠)工作

java - 我应该使用哪个 Apple Push Notification Service Java 库?

mysql - Phpmailer 在 html 电子邮件中删除名称值,但使用纯文本?

java - Java高效实现多维数组?

ios - unicode 到字符串的快速转换