【发布时间】:2015-09-08 22:54:27
【问题描述】:
好的,所以这有点棘手,但让我解释一下。我有一个 100 个值的布尔值。对于 100 步,我必须将值从 true 切换为 false,但是这是步进值的增量。例如
第一步 = 递增 1 并将 false 翻转为 true 第二步 = 增加 2 并翻转布尔值(无论值如何) 第三步........我确定你现在明白了。这将持续 100 步,每次按步长值递增。
所以到目前为止,我得到了一些不可靠的结果,我需要知道如何查看值或布尔值并仅在最后一步之后显示真实值。有什么帮助吗??
/
public class MailBox {
public static void main(String[] args) {
boolean[] amountToflip = new boolean[100];
int boxnum;
for(boxnum=0; boxnum<amountToflip.length;boxnum++){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=1; boxnum<amountToflip.length;boxnum+=2){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=2; boxnum<amountToflip.length;boxnum+=3){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=3; boxnum<amountToflip.length;boxnum+=4){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=4; boxnum<amountToflip.length;boxnum+=5){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=5; boxnum<amountToflip.length;boxnum+=6){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=6; boxnum<amountToflip.length;boxnum+=7){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=7; boxnum<amountToflip.length;boxnum+=8){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=8; boxnum<amountToflip.length;boxnum+=9){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=9; boxnum<amountToflip.length;boxnum+=10){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=10; boxnum<amountToflip.length;boxnum+=11){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=11; boxnum<amountToflip.length;boxnum+=12){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=12; boxnum<amountToflip.length;boxnum+=13){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=13; boxnum<amountToflip.length;boxnum+=14){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=14; boxnum<amountToflip.length;boxnum+=15){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=15; boxnum<amountToflip.length;boxnum+=16){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=16; boxnum<amountToflip.length;boxnum+=17){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=17; boxnum<amountToflip.length;boxnum+=18){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=18; boxnum<amountToflip.length;boxnum+=19){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=19; boxnum<amountToflip.length;boxnum+=20){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=20; boxnum<amountToflip.length;boxnum+=21){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=21; boxnum<amountToflip.length;boxnum+=22){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=22; boxnum<amountToflip.length;boxnum+=23){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=23; boxnum<amountToflip.length;boxnum+=24){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=24; boxnum<amountToflip.length;boxnum+=25){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=25; boxnum<amountToflip.length;boxnum+=26){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=26; boxnum<amountToflip.length;boxnum+=27){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=27; boxnum<amountToflip.length;boxnum+=28){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=28; boxnum<amountToflip.length;boxnum+=29){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=29; boxnum<amountToflip.length;boxnum+=30){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=30; boxnum<amountToflip.length;boxnum+=31){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=31; boxnum<amountToflip.length;boxnum+=32){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=32; boxnum<amountToflip.length;boxnum+=33){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=33; boxnum<amountToflip.length;boxnum+=34){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=34; boxnum<amountToflip.length;boxnum+=35){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=35; boxnum<amountToflip.length;boxnum+=36){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=36; boxnum<amountToflip.length;boxnum+=37){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=37; boxnum<amountToflip.length;boxnum+=38){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=38; boxnum<amountToflip.length;boxnum+=39){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=39; boxnum<amountToflip.length;boxnum+=40){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=40; boxnum<amountToflip.length;boxnum+=41){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=41; boxnum<amountToflip.length;boxnum+=42){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=42; boxnum<amountToflip.length;boxnum+=43){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=43; boxnum<amountToflip.length;boxnum+=44){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=44; boxnum<amountToflip.length;boxnum+=45){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=45; boxnum<amountToflip.length;boxnum+=46){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=46; boxnum<amountToflip.length;boxnum+=47){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=47; boxnum<amountToflip.length;boxnum+=48){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=48; boxnum<amountToflip.length;boxnum+=49){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=49; boxnum<amountToflip.length;boxnum+=50){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=50; boxnum<amountToflip.length;boxnum+=51){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=51; boxnum<amountToflip.length;boxnum+=52){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=52; boxnum<amountToflip.length;boxnum+=53){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=53; boxnum<amountToflip.length;boxnum+=54){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=54; boxnum<amountToflip.length;boxnum+=55){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=55; boxnum<amountToflip.length;boxnum+=56){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=56; boxnum<amountToflip.length;boxnum+=57){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=57; boxnum<amountToflip.length;boxnum+=58){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=58; boxnum<amountToflip.length;boxnum+=59){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=59; boxnum<amountToflip.length;boxnum+=60){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=60; boxnum<amountToflip.length;boxnum+=61){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=61; boxnum<amountToflip.length;boxnum+=62){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=62; boxnum<amountToflip.length;boxnum+=63){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=63; boxnum<amountToflip.length;boxnum+=64){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=64; boxnum<amountToflip.length;boxnum+=65){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=65; boxnum<amountToflip.length;boxnum+=66){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=66; boxnum<amountToflip.length;boxnum+=67){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=67; boxnum<amountToflip.length;boxnum+=68){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=68; boxnum<amountToflip.length;boxnum+=69){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=69; boxnum<amountToflip.length;boxnum+=70){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=70; boxnum<amountToflip.length;boxnum+=71){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=71; boxnum<amountToflip.length;boxnum+=72){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=72; boxnum<amountToflip.length;boxnum+=73){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=73; boxnum<amountToflip.length;boxnum+=74){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=74; boxnum<amountToflip.length;boxnum+=75){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=75; boxnum<amountToflip.length;boxnum+=76){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=76; boxnum<amountToflip.length;boxnum+=77){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=77; boxnum<amountToflip.length;boxnum+=78){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=78; boxnum<amountToflip.length;boxnum+=79){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=79; boxnum<amountToflip.length;boxnum+=80){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=80; boxnum<amountToflip.length;boxnum+=81){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=81; boxnum<amountToflip.length;boxnum+=82){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=82; boxnum<amountToflip.length;boxnum+=83){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=83; boxnum<amountToflip.length;boxnum+=84){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=84; boxnum<amountToflip.length;boxnum+=85){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=85; boxnum<amountToflip.length;boxnum+=86){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=86; boxnum<amountToflip.length;boxnum+=87){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=87; boxnum<amountToflip.length;boxnum+=88){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=88; boxnum<amountToflip.length;boxnum+=89){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=89; boxnum<amountToflip.length;boxnum+=90){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=90; boxnum<amountToflip.length;boxnum+=91){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=91; boxnum<amountToflip.length;boxnum+=92){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=92; boxnum<amountToflip.length;boxnum+=93){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=93; boxnum<amountToflip.length;boxnum+=94){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=94; boxnum<amountToflip.length;boxnum+=95){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=95; boxnum<amountToflip.length;boxnum+=96){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=96; boxnum<amountToflip.length;boxnum+=97){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=97; boxnum<amountToflip.length;boxnum+=98){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=98; boxnum<amountToflip.length;boxnum+=99){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
for(boxnum=99; boxnum<amountToflip.length;boxnum+=100){
amountToflip[boxnum] = !amountToflip[boxnum];
System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}
}
}
发生的事情是最终打印输出显示每个步骤的值,包括真值和假值,我只想显示真值。我在里面放了一个 int ,这样我就可以有一个 boxnumber ,这样我就知道哪个数字是真的,例如框 1 = 真,框 7 = 真
【问题讨论】:
-
循环之母.....
-
使用 100 个循环仅在一或两个次要位置变化是您正在寻找嵌套循环的最有力的指示。 (提示,你可以有一个
for (initialBoxNum=0; initialBoxNum <100; initialBoxNum++) { ... }的外循环 -
我尝试将它们全部嵌套,但结果相同.. 所以决定这样看起来更好
-
这样看起来肯定不会更好。如果你现在意识到自己犯了一个错误——你需要修复它 100 次,而在另一种情况下——你需要修复它一次。这段代码可维护性真的很差
-
@HSinghxxx 看得我头晕目眩,嵌套循环清晰多了。