[UInt8] 的下标范围 - Swift
Subscript range of [UInt8] - Swift
所以我遇到的问题是我在 init() 中有一个参数需要 [UInt8] 的对象。我希望能够从另一个数组中获取一个范围并在 init 中使用它。参见示例。
class Test {
init(fromArray: [UInt8]) {
// performs work
}
}
let myStockArray: [UInt8] = [1,2,3,4,5,6,7,8] // reference array
let test = Test(fromArray: myStockArray[1...4]) // doesn't work
我怎样才能让它工作?我得到的错误是:无法使用 'CountableClosedRange'
类型的索引下标 '[UInt8]' 类型的值
用范围给数组下标并不是 return 数组,这是主要问题。您正在尝试将 ArraySlice<UInt8>
类型数据设置为具有内部 [UInt8]
类型的构造函数。
试试这个方法:
class Test {
init(fromArray: [UInt8]) {
// performs work
}
}
let myStockArray: [UInt8] = [1,2,3,4,5,6,7,8] // reference array
let test = Test(fromArray: Array(myStockArray[1...4]))
所以我遇到的问题是我在 init() 中有一个参数需要 [UInt8] 的对象。我希望能够从另一个数组中获取一个范围并在 init 中使用它。参见示例。
class Test {
init(fromArray: [UInt8]) {
// performs work
}
}
let myStockArray: [UInt8] = [1,2,3,4,5,6,7,8] // reference array
let test = Test(fromArray: myStockArray[1...4]) // doesn't work
我怎样才能让它工作?我得到的错误是:无法使用 'CountableClosedRange'
类型的索引下标 '[UInt8]' 类型的值用范围给数组下标并不是 return 数组,这是主要问题。您正在尝试将 ArraySlice<UInt8>
类型数据设置为具有内部 [UInt8]
类型的构造函数。
试试这个方法:
class Test {
init(fromArray: [UInt8]) {
// performs work
}
}
let myStockArray: [UInt8] = [1,2,3,4,5,6,7,8] // reference array
let test = Test(fromArray: Array(myStockArray[1...4]))