简体   繁体   English

Java布尔数组打印出真正的问题

[英]Java boolean array print out true issue

OK, so this is a little tricky but let me explain. 好的,这有点棘手,但让我解释一下。 I have a boolean of 100 values. 我有100个值的布尔值。 for a 100 steps I have to switch value from true to false, however this is increments of the step value. 对于100步,我必须将值从true切换为false,但这是步长值的增量。 eg 例如

first step = increment by one and flip false to true second step = increment by two and flip boolean (no matter the value) third step........ im sure you get this by now. 第一步=递增1,然后将false翻转为true。第二步=递增2,然后将布尔值翻转(不管值如何)。第三步........我确定您现在已经知道了。 this will go on for a 100 steps incremented by the step value each time. 每次将以步长值递增100步。

So I ahve got so far but I am getting some dodgy results, I need to know how to look through the values or the boolean and display the true ones only after the very last step. 因此,到目前为止,我得到了一些令人毛骨悚然的结果,我需要知道如何通过数值或布尔值查找并仅在最后一步之后显示真实值。 Any help?? 有帮助吗?

/
   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]);
    }
   }

}

What is happening is that the end printout displays the values for each step which include true and false, I only want to display true values. 发生的情况是,最终打印输出显示每个步骤的值,包括true和false,我只想显示true值。 I put an int in the so that I can have a boxnumber so I know which number is true eg box 1 = True, box 7 = true 我将int放入,以便可以有一个boxnumber,以便知道哪个数字是真实的,例如box 1 = True,box 7 = true

Remember, to avoid any redundant work, we use loops! 请记住,为避免任何多余的工作,我们使用循环! So why 100 loops doing same thing only changing the values of boxnum ? 那么为什么100个循环只做一次改变boxnum的值呢?

Try this to avoid 100 loops: 尝试这样做以避免100次循环:

int i;
for(i = 0; i <100; i++) {
    for(boxnum=i; boxnum < amountToflip.length; boxnum = boxnum + 1 +i){
        amountToflip[boxnum] = !amountToflip[boxnum];
     }
}

Now for print do something like that, 现在要进行打印,

for(boxnum = 0; boxnum < amountToflip.length; boxnum++) {
    if(amountToflip[boxnum]) // this condition will check only for true
        System.out.println("Mailbox: " + boxnum + amountToflip[boxnum]);
}

Here's your code fixed so you don't repeat yourself unnecessarily: 这是固定的代码,因此您不必不必要地重复自己的代码:

public static void mailbox() {
    boolean[] amountToflip = new boolean[100];
    for (int boxNum = 0; boxNum < amountToflip.length; boxNum++) {
        for (int i = boxNum; i < amountToflip.length; i++) {
            amountToflip[i] = !amountToflip[i];
            System.out.println("Mailbox: " + i + amountToflip[i]);
        }
    }
}

And now you can see how easy it is to only print where the boolean is true : 现在,您可以看到仅在布尔值为true下打印是多么容易:

public static void mailbox() {
    boolean[] amountToflip = new boolean[100];
    for (int boxNum = 0; boxNum < amountToflip.length; boxNum++) {
        for (int i = boxNum; i < amountToflip.length; i++) {
            amountToflip[i] = !amountToflip[i];
            if (amountToflip[i]) {
                System.out.println("Mailbox: " + i + amountToflip[i]);
            }
        }
    }
}

Here's the same code with the printing moved to the end and tidied: 这是相同的代码,将打印移至最后并整理:

public static void mailbox() {
    boolean[] amountToflip = new boolean[100];
    for (int boxNum = 0; boxNum < amountToflip.length; boxNum++) {
        for (int i = boxNum; i < amountToflip.length; i++) {
            amountToflip[i] = !amountToflip[i];
        }
    }
    // Roll all 100 up into a single display.
    for (int i = 0; i < amountToflip.length; i++) {
        System.out.print(amountToflip[i] ? "1" : " ");
    }
    System.out.println();
}

Prints: 印刷品:

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

I still don't understand what you are trying to achieve though. 不过,我仍然不明白您要达到的目标。

To get this straight, you want to perform the flipping as described, and then only display the results for the true boxes, at the end? 为了弄清楚这一点,您想要按说明执行翻转,然后仅在最后显示真正框的结果? Then I think this is what you are looking for: 那我想这就是您要寻找的东西:

public class MailBox {
  public static void main(String[] args) {
    boolean[] amountToflip = new boolean[100];

    // Perform the flipping
    for (int increment=1; increment <= amountToflip.length; increment++) {      
        for (int boxnum=increment - 1; boxnum < amountToflip.length; boxnum+=increment) {
            amountToflip[boxnum] = !amountToflip[boxnum];
        }
    }

    // Now print the result
    for (int i = 0; i < amountToflip.length; i++) {
        if (amountToflip[i]) {
            System.out.println("Mailbox: " + i);
        }
    }
  }
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 数组索引超出界限计算java中的“true”布尔值 - array index out of bounds in counting for “true” boolean values in java 如何打印出布尔数组的索引? - How to print out the index of a boolean array? java-如果布尔值为true但布尔值声明为false时,为什么此代码会打印应该打印的输出? - java - why does this code print the output it is supposed to print if a Boolean is true but the Boolean was declared to false? java打印出一个双数组 - java print out a double array 打印出JAVA中一个数组的长度 - Print out the length of an array in JAVA 如何打印出这个布尔值? (JAVA) - How do I print out the value of this boolean? (Java) toString方法来打印带有二维布尔数组的游戏板 - toString Method to print out a game board with a 2D boolean array Java:生成一个恰好为“x”真的随机布尔数组 - 算法 - Java: Generate a random boolean array with exactly 'x' true - Algorithm 如何检查布尔数组是否为true的任何实例,然后从相应的数组中打印这些实例? - How to check a boolean array for any instances of true and then print those instances from a corresponding array? 有没有办法在Java(Android)中将布尔数组打印为(0,1) - Is there is any way to print boolean array as (0,1) in Java(Android)
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM