Javaのbyte[]は、、、
- byteはSwiftでは
UInt8
// ※extension Dataなどに書いてください
/// バイト配列に変換
var toByteArray: [UInt8] {
[UInt8](self)
}
Javaのshort[]は、、、
- shortはSwiftでは
Int16
// ※extension Dataなどに書いてください
/// Int16(short)の配列に変換
var toShortArray: [Int16] {
var result: [Int16] = []
let count = self.count
guard count % MemoryLayout<Int16>.size == 0 else {
// Int16に変換できないサイズだった
return result
}
for i in stride(from: 0, to: count, by: 2) {
let shortValue = self.subdata(in: i..<(i+2)).withUnsafeBytes { $0.load(as: Int16.self) }
result.append(shortValue)
}
return result
}
Javaのintは、、、
- Javaではintは32bit
- SwiftではIntは実行環境によって異なるので、
Int32
をつかう
Javaのlongは、、、
- Swiftでは
Int64
- 参考記事