Java 每个数组表示一个位模式

Java 每个数组表示一个位模式,java,Java,我目前正在尝试实现可扩展哈希。它将使用bucket存储从文本文件中获取的ID。每个id(即10111)将进入一个具有固定大小的桶中。每个bucket将是一个节点数组。我最大的问题是,我试图确定每个桶将如何用位模式表示。例如: 000 001 010 011 100 101 110 111 每个存储桶将代表(至少1个)上述位模式。如果一个存储桶达到了它能容纳的最大值(这是一个固定的大小),并且需要放入其他东西,那么位模式将增加1位,因此它现在将是0000、0001、0010…等等 本质上,我只是

我目前正在尝试实现可扩展哈希。它将使用bucket存储从文本文件中获取的ID。每个id(即10111)将进入一个具有固定大小的桶中。每个bucket将是一个节点数组。我最大的问题是,我试图确定每个桶将如何用位模式表示。例如:

000
001
010
011
100
101
110
111
每个存储桶将代表(至少1个)上述位模式。如果一个存储桶达到了它能容纳的最大值(这是一个固定的大小),并且需要放入其他东西,那么位模式将增加1位,因此它现在将是0000、0001、0010…等等


本质上,我只是很困惑如何让每个bucket表示至少一个位模式,这样我就可以将每个id与每个bucket的位模式进行比较,并为其找到合适的位置。

您可以使用整数表示id。您可以使用
Integer.tobinarysting(myId)将它们与文本文件中的位字符串进行比较;

尝试使每个桶代表一个唯一的数字。可以从0开始,递增1。这个数字是以10为基数的整数。但是通过将bucket模式转换为二进制来保存它

Integer.toString(x, 2) 
如果你需要把它转换回二进制,你可以这样做

Integer.valueOf(binary_value, 2)

这还不清楚。请举例说明你的意思。