【问题标题】:Empty String Array: Is there a difference between [] and [""]?空字符串数组:[] 和 [""] 有区别吗?
【发布时间】:2018-02-28 12:10:06
【问题描述】:

在 iOS 版 Swift 中: 空字符串数组:[] 和 [""] 有区别吗?

let arrA: [String] = []
let arrB: [String] = [""]

arrA 和 arrB 有什么区别?

在 Swift 中初始化字符串数组的“更好”方式是哪一种?

【问题讨论】:

  • 尝试获取2之间的长度,看看是否有差异。
  • 是的,有;其中一个有 zero 项,另一个有 one 项;哪个是哪个?好吧...最好由您自己解决。
  • 对于一个空数组,我更喜欢这个——更独特的——语法let arrC = [String]()

标签: arrays swift string is-empty


【解决方案1】:

arrA 是一个空数组(一个元素为零的数组)。

let aCnt = arrA.count // aCnt = 0

arrB 是一个包含一个元素的数组,即索引0处的空String。

let bCnt = arrB.count // bCnt = 1

初始化数组的最佳方式取决于您将使用该数组的目的。除非您需要一个包含单个空字符串元素的数组,否则我会使用 arrA 方法。

【讨论】:

  • 感谢 Klaus 的快速解答!我又添加了一个问题:Which one is the "better" way to initialize a String-Array in Swift ?(即 Swift 的最佳实践是什么)?
  • @Cristik 让我休息一下……这个问题是在我最初回答之后编辑的。
  • @Cristik:问题的第二部分是在克劳斯的超快速反应之后添加的......!
  • @iKK 除非您出于某种原因想要您的数组包含空字符串,否则您想要将其初始化为[]。那是 empty 数组,也是一个合理的默认值。
【解决方案2】:

arrA: 这是一个空数组

arrB: 一个没有字符的字符串数组。

在 Swift 中初始化字符串数组的“更好”方式是哪一种?

第一个 (ArrA)。通过这种方式,您正在初始化一个空数组,这就是您在大多数情况下想要的。

【讨论】:

  • Cristik:问题的第二部分是在恩里克的超快速反应之后添加的......!
  • 第一个 (ArrA)。通过这种方式,您将创建一个空数组,这就是您在大多数情况下想要的。
猜你喜欢
  • 1970-01-01
  • 2010-09-14
  • 2021-06-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-12
相关资源
最近更新 更多