【发布时间】:2019-10-01 23:54:35
【问题描述】:
我试图将所有可能的 256 个二进制位序列放入一个字符串数组中。为了做到这一点,我创建了 8 个 for 循环来处理所有可能的情况。这是我迄今为止尝试过的。
static String[] BitSequences() {
int[] result = new int[256];
for (int a = 0; a < 256; a++) {
for (int i = 0; i < 2; i++){
for (int j = 0; j < 2; j++){
for (int k = 0; k < 2; k++){
for (int l = 0; l < 2; l++){
for (int m = 0; m < 2; m++){
for (int n = 0; n < 2; n++){
for (int o = 0; o < 2; o++){
for (int p = 0; p < 2; p++){
result[a] = ; //this part is a problem
}
}
}
}
}
}
}
}
}
String str = Arrays.toString(result);
System.out.println(str);
return str;
}
这个方法应该返回一个包含所有可能情况的字符串数组。但是,我不知道如何通过使用 int 值制作 for 循环来插入这些值。打印出来很容易: ' System.out.println(i+j+k+.....+p) ' 任何帮助将不胜感激!
【问题讨论】:
-
你为什么要这样做?这是作业吗,不允许使用某些内置 API?
-
由于整数是以 10 为基数计算的,因此您可能需要将各个整数转换为字符串并将
concatenate它们放在一起。 -
如果您决定这样做,则不再需要
Arrays.toString(result);位。result数组需要初始化为字符串数组。 -
尝试
result[a] = "" + i + j ... + p";进行转换;请注意,您的a索引会遇到问题