2015-12-31 3 views
0

Я создал класс, который потребует от меня получить следующий самый высокий интервал в девять, когда я получу номер. Вот мой текущий код.Как получить следующий самый высокий интервал из девяти из числа

int slot1 = (int) Math.floor(opposingPlayers/9.0); 
int slot2 = slot1++; 
int slot3 = slot2*9; 

Противники возвращаются. Однако, когда я запускаю код,

slot1 is equal to 1 
slot2 is equal to 0 
slot3 is equal to 0 

Однако это должно быть slot1 = 0 SLOT2 = 1 Slot3 = 9

Я только проверил это с противостоящими игроками возвращаются один, но он не должен ничего менять ,

+4

'int slot2 = slot1 ++;' увеличивает переменную 'slot1', но возвращает старое значение' slot1' (поскольку это пост-инкремент). Я думаю, вы имели в виду 'slot2 = slot1 + 1;'? –

+0

@ ElliottFrisch 0 - первый слот. – TsundereBug

ответ

1

slot1++ комплекты slot2 до slot1 (0), затем консервы slot1. Вы нуждаетесь в этом:

int slot1 = (int) Math.floor(opposingPlayers/9.0); 
int slot2 = slot1 + 1; 
int slot3 = slot2*9; 
0

Вы можете использовать это, чтобы получить следующий самый высокий интервал в девять.

number + (9 - (number % 9)) 
Смежные вопросы