在java中编写多个if语句的更好方法

Pet*_*ter 1 java

嗨,所以我最近做了很多java编程,我一直在使用很多if语句.问题是我必须复制并粘贴if语句一百多次来检查所有的senarios.这是一个例子:

while (i < AreaNumbers.size()) {
        String roomnum = "j" + AreaNumbers.get(i);
        if (roomnum.equals("j100")) {
            if (k == 1) {
                j100.setVisible(true);
                j100.setToolTipText("<html>" + "<br>" + "Room Number: " + AreaNumbers.get(i) + "<br>" + "Incident ID: " + IncidentID.get(i) + "<br>" + " Teacher: " + Teachers.get(i) + "<br>" + " Description: " + Descriptions.get(i) + "</html>");
                k = k + 1;
            } else if (k > 0) {
                j100.setToolTipText(k + " help desk calls, click here for more information");
                k = k + 1;
            }
Run Code Online (Sandbox Code Playgroud)

对于这个例子,我会复制并粘贴if (roomnum.equals("j100")) {它以及我要检查和比较的每个标签的所有内容.无论如何我能做到这一点,我可以写一个声明,经历同样的情况一次又一次它看到j100它可以在每次使用不同的标签后替换它,例如j101 j107等等.我很抱歉,如果这不是很清楚我只是想不出更好的方式来说出来.提前致谢.

Oli*_*rth 9

不要使用编号的变量名称(如j100,j101等).请改用数组,以便以编程方式遍历它们:

SomeType[] j = new SomeType[1000];

for (int z = 0; z < j.length; z++) {
    j[z] = new SomeType();

    j[z].setTooltipText("Hello world");
}
Run Code Online (Sandbox Code Playgroud)

根据您的需要,您可能希望研究更高级的集合类而不是简单的数组.