如果运行一定次数,java是否仍要生成else?
例如
else if (currentImage == nekoPics[4])
currentImage = nekoPics[5];
需要运行两次,所以我的猫动画抓痕两次,然后再移动到其他,这可能是最糟糕的方式,但我感兴趣的是,如果你可以有一个其他如果执行两次而不复制粘贴
else if (currentImage == nekoPics[5])
currentImage = nekoPics[4];
改变索引会导致循环,他会一直抓挠
谢谢你的帮助
编辑:整个代码
private void scratch(){
for (int i = xPos; i <getWidth()/2; i+=0){
xPos = getWidth()/2;
// swap images
if (currentImage == nekoPics[0])
currentImage = nekoPics[1];
else if (currentImage == nekoPics[1])
currentImage = nekoPics[2];
else if (currentImage == nekoPics[2])
currentImage = nekoPics[4];
else if (currentImage == nekoPics[4])
currentImage = nekoPics[5];
else
i+=10;
repaint();
pause(150)
# 1 楼答案
我猜你正在通过一系列图像移动,所以你可以这样做:
换句话说,当从3转换到4时,根据重复
4,5
序列的频率设置倒计时变量然后根据倒计时从
5
转换到4
或6
# 2 楼答案
整个if-else逻辑是多余的。将图像按显示顺序放入有序集合(数组、列表),如下所示
然后遍历集合,或者维护一个指向下一张图片的索引