DIY 切片扩展方法 vs 数组.Copy vs "any other options" 用于分割字节数组


Public Function Slice(data As Byte(), start As Integer, len As Integer) As Byte()
    Dim b(len - 1) As Byte
    For i = start To start + len - 1
        b(i - start) = data(i)
    Next
    Return b
End Function

测试用例:

dim data as byte()={1,2,3,4,5,6,7,8,9}
dim b=slice(data,3,5)

dim b(5-1) byte
array.copy(b,0,data,3,5)

与简单的 Slice 扩展方法相比,array.copy 有什么好处?特别是当我们确定数据长度和索引永远不会超出范围时。框架中还有其他方便的字节数组处理选项(无论是为了性能和方便)?

在这里找到了一个非常好的库 ArraySegment的轻量级扩展方法,对字节数组特别有用。

这种努力确实有帮助。

最新更新