【发布时间】:2017-10-09 12:50:00
【问题描述】:
我有一个密码密钥,格式为“XY XY+1 XY+2 XY+3 XY+4 XY+5 FF FF”,其中 XY 是未知字节,例如,XY 可能是 00000000 所以 XY+ 1 是 00000001。 另外,FF 是一个常数,所以总是 11111111。
我有一个 addBinary() 方法,它只是将 1 添加到我给它的任何二进制字符串中,但是,我发现很难生成所有由“xxxx ... 11111111 11111111”组成的二进制字符串。
我还在 StackOverflow 上找到了这个 printB() 方法,它生成字符串,但不确定如何将 FF 硬编码到其中。
static void printB()
{
for(int i = 0; i < Math.pow(2,8); i++)
{
String format="%0"+8+"d";
System.out.printf(format,Integer.valueOf(Integer.toBinaryString(i)));
System.out.println();
}
}
任何有关如何生成此字符串的帮助将不胜感激
【问题讨论】:
-
不清楚你在这里问什么。你想要一个
assertEquals(makeString(0b10), "00000010 00000011 00000100 00000101 00000110 00000111 11111111 11111111")这样的方法吗? -
您的第一段没有说明为什么要为所有 256 个 8 位数字生成字符串。
标签: java