在同一行上自动格式化注释

时间:2015-04-01 19:19:44

标签: java comments autoformatting

当我尝试使用自动格式化时,评论变得混乱。这是我使用自动格式化之前的代码:

if (x > 125 && x < 295 && y > 180 && y < 350) { //if mouse in first tower

        if (x > bar1.x1 && x < bar1.x2 && y > bar1.y1 && y < bar1.y2){  //if mouse in first bar
        }
        if (x > bar2.x1 && x < bar2.x2 && y > bar2.y1 && y < bar2.y2){ //if mouse in second bar
        }
        if (x > bar3.x1 && x < bar3.x2 && y > bar3.y1 && y < bar3.y2){ //if mouse in third bar
        }
        if (x > bar4.x1 && x < bar4.x2 && y > bar4.y1 && y < bar4.y2){ //if mouse in fourth bar
        }
        if (x > bar5.x1 && x < bar5.x2 && y > bar5.y1 && y < bar5.y2){ //if mouse in fifth bar
        }

    }

这是我使用自动格式化后的代码:

if (x > 125 && x < 295 && y > 180 && y < 350) { // if mouse in first
                                                    // tower

        if (x > bar1.x1 && x < bar1.x2 && y > bar1.y1 && y < bar1.y2) { // if
                                                                        // mouse
                                                                        // in
                                                                        // first
                                                                        // bar
        }
        if (x > bar2.x1 && x < bar2.x2 && y > bar2.y1 && y < bar2.y2) { // if
                                                                        // mouse
                                                                        // in
                                                                        // second
                                                                        // bar
        }
        if (x > bar3.x1 && x < bar3.x2 && y > bar3.y1 && y < bar3.y2) { // if
                                                                        // mouse
                                                                        // in
                                                                        // third
                                                                        // bar
        }
        if (x > bar4.x1 && x < bar4.x2 && y > bar4.y1 && y < bar4.y2) { // if
                                                                        // mouse
                                                                        // in
                                                                        // fourth
                                                                        // bar
        }
        if (x > bar5.x1 && x < bar5.x2 && y > bar5.y1 && y < bar5.y2) { // if
                                                                        // mouse
                                                                        // in
                                                                        // fifth
                                                                        // bar
        }

    }

我该如何解决这个问题?

3 个答案:

答案 0 :(得分:1)

您是否尝试过将评论放在自己的路线上?

if (x > bar1.x1 && x < bar1.x2 && y > bar1.y1 && y < bar1.y2) {  
    //if mouse in first bar
    doFirstBarStuff();
}
if (x > bar2.x1 && x < bar2.x2 && y > bar2.y1 && y < bar2.y2) {
    //if mouse in second bar
    doSecondBarStuff();
}

答案 1 :(得分:0)

而不是所有的注释都考虑使用具有表达名称的方法,例如:

boolean mouseInside(Bar bar, int x, int y) {
  return x > bar.x1 && x < bar.x2 && y > bar.y1 && y < bar.y2;
}

然后您的代码看起来像这样,并且不需要注释:

if (mosueInside(bar1, x, y))  {
}

if (mouseInside(bar2, x, y)) {        
}

答案 2 :(得分:0)

实际上,如果我这样做,它就有效:

//if-mouse-in-first-bar