1
我想將長轉換爲數組字節。此代碼塊正在工作,但此解決方案是Java解決方案。我在斯卡拉尋找一個好的解決方案。我如何將Scala中的Long轉換爲數組字節?斯卡拉方式轉換長ArrayByte
val arrayByteFromLong: Array[Byte] = ByteBuffer.allocate(8).putLong(myLong).array()
我想將長轉換爲數組字節。此代碼塊正在工作,但此解決方案是Java解決方案。我在斯卡拉尋找一個好的解決方案。我如何將Scala中的Long轉換爲數組字節?斯卡拉方式轉換長ArrayByte
val arrayByteFromLong: Array[Byte] = ByteBuffer.allocate(8).putLong(myLong).array()
您可以利用scala.math.BigInt
:
import scala.math.BigInt
val arrayByteFromLong: Array[Byte] = BigInt(myLong).toByteArray
如果你也想墊數組8
Byte
是你可以做的(快速和骯髒的不那麼有效的版本):
arrayByteFromLong.reverse.padTo(8,0).reverse
這對Scala來說也很好(我更喜歡Federico的回答)。一個例外是如果你正在尋找可以在Scala.js/Scala Native中工作的代碼。 –