帮我精简以下代码:while (isDrawing1) { move += gap; repaint(); try { Thread.sleep(20); } catch (InterruptedException e) { e.printStackTrace(); } } while (isDrawing2) { move += gap; repaint(); try { Thread.sleep(20); } catch (InterruptedException e) { e.printStackTrace(); } } while (isDrawing3) { move += gap; repaint(); try { Thread.sleep(20); } catch (InterruptedException e) { e.printStackTrace(); } } while (isDrawing4) { move += gap; repaint(); try { Thread.sleep(20); } catch (InterruptedException e) { e.printStackTrace(); } } }
时间: 2024-02-11 13:09:55 浏览: 146
精简的拖动代码
3星 · 编辑精心推荐
你可以将重复的代码提取出来,只保留一次即可。可以使用数组或集合来存储 `isDrawing` 变量,然后遍历数组或集合,对每个元素执行相同的操作。例如:
```
boolean[] isDrawing = {isDrawing1, isDrawing2, isDrawing3, isDrawing4};
while (true) {
for (boolean isDrawingItem : isDrawing) {
if (isDrawingItem) {
move += gap;
repaint();
try {
Thread.sleep(20);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
```
在这个例子中,我们使用了一个布尔型数组 `isDrawing` 来存储 `isDrawing1` 到 `isDrawing4` 四个变量。然后,我们使用 `for` 循环遍历该数组,对每个数组元素执行相同的操作。这样,我们就避免了重复代码的问题。
阅读全文