이 글에 대해 약간 혼란스러워서 게시 할 것이라고 생각했습니다. 미안 내 제목이 명확하지 않은 경우, 매우 새로운 자바와 그것을 설명하는 방법을 잘 몰랐습니다. 어쨌든 여기까지 (문제 비트는 내가 추측) 코드 내 세트 그러니까 기본적으로이 모든 코드 단지 "육즙 부분"아닙니다 무슨 일 (실행중인 메소드를 다음 메소드로 이동하기 위해
int currentImageIndex = 0; // Assuming [0] is your first image.
int[] nextImageList = { 2, 4, 5, 4, 5, 4, 5, 0, 1 };
public void nekoRun() {
moveIn();
scratch();
moveOut();
private void moveIn() {
for (int i = 0; i < getWidth()/2; i+=10) {
xPos = i;
// swap images
if (currentImage == nekoPics[0])
currentImage = nekoPics[1];
else
currentImage = nekoPics[0];
repaint();
pause(150);
private void scratch() {
for (int i = xPos; i < getWidth();) {
xPos = i;
// Swap images.
currentImageIndex = nextImageList[currentImageIndex];
currentImage = nekoPics[currentImageIndex];
repaint();
pause(150);
}
}
private void moveOut() {
for (int i = xPos; i < getWidth(); i+=10) {
xPos = i;
// swap images
if (currentImage == nekoPics[0])
currentImage = nekoPics[1];
else
currentImage = nekoPics[0];
repaint();
pause(150);
}
}
는 고양이가 화면을 가로 질러 실행하고 그때 앉아서 그 두번 긁어 버렸다고 가정한다면, 나는 진술서의 전체 힙을 사용하고 있었기 때문에 배열에 대한 도움을 받았고, 그것이 쓸데 없다는 것을 알았습니다. 고양이는 중심으로 달려가 스크래치를 계속합니다. 명백한 이유 때문에 루프에서 긁는 것, 나는 처음에 루프를 반복하지 않고 moveOut 메서드로 이동하는 방법을 혼란스럽게 생각합니다. 미안하지만 약간 불분명하다면, 나는 이것에 대해 매우 새롭습니다. 나와 맺으십시오.
미리 감사드립니다.
그냥 제쳐두고, 당신의'scratch()'메소드'scratchTwice()'의 이름을 바꾸는 것을 고려 해보았습니까? 여기서는별로 중요하지 않지만 크고 복잡한 시스템에서의 기능을 정확하게 반영한 메소드 이름을 갖는 것이 중요하다는 것을 알 수있을 것입니다. – Edd