Swift中的子数据方法&x27;I don’我好像没有按我的意思做

Swift中的子数据方法&x27;I don’我好像没有按我的意思做,swift,Swift,我在操场上有以下代码(Swift 5) datadrop是一个 它包含数据的子集,但与原始集合共享相同的索引。它崩溃是因为datadrop的第一个索引是2,而不是0 要获取新的数据对象,必须编写 let datadropped = Data(data.dropFirst(2)) 有关切片的更多信息,请观看(从11:00开始) 注意:您可以删除fromByteOffset参数 return copy.withUnsafeBytes{ $0.load(as: UInt32.self).bi

我在操场上有以下代码(Swift 5)


datadrop
是一个

它包含数据的子集,但与原始集合共享相同的索引。它崩溃是因为
datadrop
的第一个索引是2,而不是0

要获取新的
数据
对象,必须编写

let datadropped = Data(data.dropFirst(2))
有关切片的更多信息,请观看(从11:00开始)

注意:您可以删除
fromByteOffset
参数

return copy.withUnsafeBytes{
    $0.load(as: UInt32.self).bigEndian
}

datadrop
是一个

它包含数据的子集,但与原始集合共享相同的索引。它崩溃是因为
datadrop
的第一个索引是2,而不是0

要获取新的
数据
对象,必须编写

let datadropped = Data(data.dropFirst(2))
有关切片的更多信息,请观看(从11:00开始)

注意:您可以删除
fromByteOffset
参数

return copy.withUnsafeBytes{
    $0.load(as: UInt32.self).bigEndian
}

代码中有多余的
<代码>数据1未定义无法在操场上再现碰撞。子数据到数据就像ArraySlice到ArrayStanks一样,已更正。我做了一些手动编辑后,副本,并错过了他们。虽然很奇怪,因为它们不在我的操场上,我也没有编辑这些片段。而且,它现在对我来说并没有崩溃。我认为这与数据的一致性有关。在我的代码库中,我整天都在努力解决这个问题。祝你好运,我希望瓦迪安的回答能有所帮助:)代码中有一些无关的
<代码>数据1未定义无法在操场上再现碰撞。子数据到数据就像ArraySlice到ArrayStanks一样,已更正。我做了一些手动编辑后,副本,并错过了他们。虽然很奇怪,因为它们不在我的操场上,我也没有编辑这些片段。而且,它现在对我来说并没有崩溃。我认为这与数据的一致性有关。在我的代码库中,我整天都在努力解决这个问题。祝你好运,我希望瓦迪安的回答能有所帮助:)谢谢你的回答,我怀疑这与切片有关。但是,当我检查文档时,它声明///返回指定范围内数据的新副本。//-参数范围:要复制的范围。公共func子数据(范围内:范围)->数据。有没有一种简单的方法来确定数据是否为切片?为了避免对齐问题,我还将新的数据副本包装在data()中。这似乎没有多大区别。请阅读文档。是的,
子数据
返回一个新的
数据
对象,但是接收器是至关重要的(
数据
数据删除
)啊,我已经注意到了我想的问题。我前面使用的dropFirst返回子序列。这样一来,我的代码就会出现问题。谢谢你的帮助。谢谢你的回答,我怀疑这与切片有关。但是,当我检查文档时,它声明///返回指定范围内数据的新副本。//-参数范围:要复制的范围。公共func子数据(范围内:范围)->数据。有没有一种简单的方法来确定数据是否为切片?为了避免对齐问题,我还将新的数据副本包装在data()中。这似乎没有多大区别。请阅读文档。是的,
子数据
返回一个新的
数据
对象,但是接收器是至关重要的(
数据
数据删除
)啊,我已经注意到了我想的问题。我前面使用的dropFirst返回子序列。这样一来,我的代码就会出现问题。谢谢你的帮助。