scala - Scala中的位字段

标签 scala bit-manipulation

如何在Scala中模拟位字段?位字段用于访问一种类型的某些位(例如C link中的位)。我知道可以使用位运算符进行编写,但是我认为,如果不考虑性能,那是一种更好的方法。

感谢您提供的所有提示。

最佳答案

如果您只想要一位,那么collection.BitSet将为您工作。

如果您想要一个适当的位域类,那么您会很不走运,原因有两个。首先,因为Scala没有一个。其次,因为即使这样做,由于与对象相比,封闭对象的开销可能会很大,因此节省的空间可能也不会非常可观。

有一些方法可以完成一些工作:一个自定义类,它包装一个整数并允许您将其一部分作为位字段进行操作;但是,当您存储整数时,只需将其另存为原始int。或者,您可以创建一个位域结构数组(任意长度),将其实现为整数数组。但是没有内置的东西。您将不得不自己动手。

关于scala - Scala中的位字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3964478/

相关文章:

scala - 减少一组空集是否有效?

mysql - 无法在 Quill 中使用事务插入一对多关系对象

C++ - 将 int 拆分为两个较小的数据类型

c - 具有 htonl 和 ntohl 功能的 pdp endian

c++ - 按位整数连接

string - 如何找到scala.MatchError的来源?

scala - 如何将数据帧转换为标签特征向量?

scala - 为什么从 UDF 访问 DataFrame 会导致 NullPointerException?

python - 列表中元素之间的按位运算

string - 压缩特里实现?