Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/grails/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
了解Java位集类的实现_Java_Bitset - Fatal编程技术网

了解Java位集类的实现

了解Java位集类的实现,java,bitset,Java,Bitset,当我尝试测试并理解BitSet对象时,它提供了一些不清楚的结果 主要内容: 输出: Input bitset: {3, 5, 8, 9, 10, 11, 12, 13, 14, 15} Input bitset length: 64 输出对我来说毫无意义。我不理解位集的基本逻辑。我将感谢你的帮助 这够清楚吗 byte f = (byte)0b00101000; // Bits 0 to 7 --5-3--- byte s = (byte)0b111111

当我尝试测试并理解BitSet对象时,它提供了一些不清楚的结果

主要内容:

输出:

Input bitset: {3, 5, 8, 9, 10, 11, 12, 13, 14, 15}
Input bitset length: 64
输出对我来说毫无意义。我不理解位集的基本逻辑。我将感谢你的帮助

这够清楚吗

byte f = (byte)0b00101000;
// Bits 0 to 7   --5-3---                  
byte s = (byte)0b11111111;
// Bits 8 to 15  54321098
byte[] bytes = new byte[]{f, s};
BitSet bs = BitSet.valueOf(bytes);
而64是由于当前分配的位数。通过调用
bs.length()
可以获得设置位的最大位数


没有任何东西指示由任何构造函数或方法定义的尾随未设置位,但这不是必需的。这并没有什么坏处,因为使用的索引(例如,在BitSet.get(int-index))的值超出了位集的这个或那个“end”不会受到惩罚

你看过这些文件了吗?@m02ph3u5其实我看过了,还是很困惑。。。并不是所有的文档都能清楚地理解正在发生的事情,我明白数组的含义。但是比特集的长度呢?应该是16岁吧?因为我们有16位…”size()返回此位集实际用于表示位值的空间位数-
byte f = (byte)0b00101000;
// Bits 0 to 7   --5-3---                  
byte s = (byte)0b11111111;
// Bits 8 to 15  54321098
byte[] bytes = new byte[]{f, s};
BitSet bs = BitSet.valueOf(bytes);