Справка по Java по модулю - PullRequest
       6

Справка по Java по модулю

0 голосов
/ 19 октября 2010
public void turnRight() {
        int direction=getDirection();
        if (direction==3)
            direction=0;
        else
            direction++;
        this.setDirection(direction);

Итак, у меня есть этот метод, который при вызове увеличивает направление на 1. Однако максимальное значение должно быть 3, поэтому, если направление равно 3 и метод вызывается, то он должен вернуться к нулю. То, что у меня работает, но я уверен, что есть способ сделать это, используя оператор%. Может кто-нибудь показать мне, как?

Ответы [ 3 ]

2 голосов
/ 19 октября 2010
direction++;
direction%=4;
0 голосов
/ 19 октября 2010

public void turnRight () {this.setDirection (getDirection ()% 4 == 3? 0: getDirection () + 1);}

0 голосов
/ 19 октября 2010
int direction = getDirection();
direction++;  
direction = direction % 4;
...