У меня есть вопрос скорости для Java.Я делаю шахматную программу, и я хочу проверить, является ли хорошей идеей использовать одну int
в качестве переменной для хранения четырех int
переменных, значения которых варьируются от 1 до 4 бит.
Проблема в том, что мне часто приходится извлекать и вставлять новые части переменной, так что это будет стоить некоторых побитовых операций.
Код:
int fromX = 4, fromY = 5, toX = 6, toY = 7;
int move = 0
move |= toY;
move = move << 4;
move |= toX;
move = move << 4;
move |= fromY;
move = move << 4;
move |= fromX;
doWork(move);
или
int fromX = 4, fromY = 5, toX = 6, toY = 7;
doWork(fromX, fromY, toX, toY);
doWork()
будет делать много разных вещей с координатами, в основном извлекать их из 'int' или просто использовать переменные.
Что я должен использовать?