【问题标题】:How can I truncate a String array in Swift? [duplicate]如何在 Swift 中截断字符串数组? [复制]
【发布时间】:2018-01-17 17:28:17
【问题描述】:

我在 Swift 中有一个字符串数组,我想只缩短到前 5 个。看起来我做不到:

myArray = myArray[0..<5]

因为我得到一个编译器错误:

不能使用 Countable Range 类型的索引为 [String] 类型的值下标

那我能做些什么呢?

【问题讨论】:

  • 显示您的实际代码。 myArray[0..&lt;5] 合法的,所以你没有你认为你拥有的东西;这可能是一个 x-y 问题,如果您展示真实代码,我们可以深入了解它的核心。
  • 虽然myArray[0..&lt;5] 可能是合法的,但array.prefix(n) 是一种更安全的方式,因为它是安全的!

标签: arrays swift


【解决方案1】:

我会说

let arr2 = arr1.prefix(5)

请记住,结果是一个切片。如果您想要一个数组,请强制返回一个数组。所以例如

var arr1 = // ...
arr1 = Array(arr1.prefix(5))

然而,符号arr1[0..&lt;5] 是合法的,尽管有相同的附带条件:它是一个切片,需要将其转换回一个数组,以便将其分配到预期数组的位置。

【讨论】:

    【解决方案2】:
    array = [1,2,3,4,5,6]
    n = 5
    array.prefix(n)
    

    【讨论】:

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