스위치를 통해 for 루프의 첫 번째 반복에 대해서만 특정 이미지를 설정하려고합니다. case 'f'
에 대해 첫 번째 반복에서 다른 이미지를 추가하고 싶습니다.Switch Java 첫 번째 문장에 대한 If 문 만들기
어떻게하면됩니까? 스위치 내에서 추적 할 수 있습니까?
for (char c : symbols) {
switch (c) {
case 'X':
g2.setColor(Color.BLACK);
g2.drawImage(wallImg, x, y, width, height, null);
break;
case 's':
g2.setColor(Color.GREEN);
g2.drawImage(snakeImg, x, y, width, height, null);
break;
case 'f':
g2.setColor(Color.ORANGE);
g2.drawImage(burgerImg, x, y, width, height, null);
break;
case '.':
g2.setColor(Color.WHITE);
g2.fillRect(x, y, width, height);
break;
case '\n':
y += height;
}
스위치 전에 부울 플래그를 추가 그런 다음 if (boolean flag)를 true/false인지 확인한 다음, true 일 경우 else로 이동하여 다른 이미지를로드 할 수 있습니다. – Artemis
반복 횟수는 페인팅 프로세스의 일부가 아니어야합니다. 페인팅이 언제, 어떻게 발생하는지 제어 할 수 없기 때문입니다. 오브젝트 상태의 변경은 게임 루프에 있어야합니다 (스윙 타이머). 페인팅 메서드는 모델의 상태를 반영해야하지만 변경할 수는 없습니다. –
이것은 해결책으로 표시하지 않은 @ user5402 문제를 해결 했습니까? 어떤 문제가 발생 했습니까? – Artemis