我正在使用Swift,并尝试将一个整数(例如:-1333)转换为4个字节的字节数组。我已经成功将一个Int转换为8个字节的数组(-1333变成[255, 255, 255, 255, 255, 255, 250, 203]),但我需要它变成4个字节。我知道其他语言如Java有实现这个功能的方法,但在Swift中是否也有类似的方式呢?以下是我的代码:(我参考了这个答案)
func createByteArray(originalValue: Int)->[UInt8]{
var result:[UInt8]=Array()
var _number:Int = originalValue
let mask_8Bit=0xFF
var c=0
var size: Int = MemoryLayout.size(ofValue: originalValue)
for i in (0..<size).reversed(){
//at: 0 -> insert at the beginning of the array
result.insert(UInt8( _number&mask_8Bit),at:0)
_number >>= 8 //shift 8 times from left to right
}
return result
}