Я отправляю 2 целых числа как одно длинное в Java, и не могу до конца жизни понять, как правильно передать их, используя сдвиг битов.
У меня есть метод для создания длинного:
public long create(int one, int two){
return (one <<32 & two);
}
Прежде всего, это правильно? (Чтобы отправить два целых числа в один длинный вместе)
Во-вторых, если я хочу получить доступ к одному или двум, как мне это сделать?
Это простой случай:
public static int getOne(long theLong) {
return (int)theLong >> 32;
}
Или есть что-то более сложное?
Некоторые рекомендации очень ценятся, спасибо!