![]() |
Int64
Как из имеющегося Int64 в десятичном представлении вычленить старшие и младшие 32 разряда?
|
Если вы про com.netease.protobuf.Int64 то там есть геттер high, а в супер-классе публичное поле low. С данной библиотекой не работал, просто предполагаю.
|
Нет, библиотек никаких в данный момент не имею ввиду, меня интересует алгоритм. Нужна функция, которая на вход получает Int64, а на выходе дает два Int32, старшие и младшие разряды соответственно.
|
@bav - предполагаю, что раз число "в представлении", то, вероятнее всего в виде строки. а раз так - нужно разбивать строку, делать parseInt или parseFloat (потому как оно возвращает Number и мы точно не вылезем за пределы int'а). Ну и хранить все это в ByteArray или собственном классе.
ЗЫ Это все телепатия, вопрос надо бы переформулировать |
Да, изначально Int64 - строка в десятичном представлении, нужно получить два Int32.
|
выше ведь ссылку на com.netease.protobuf.Int64 привели, там как раз алгоритм можно подглядеть... вообще для упрощения вычислений в таком случае я с сервера передаю Int64 в виде строки в шестнадцатеричном представлении. с ним проще работать, чем с десятичным представлением...
|
Да, подсмотрел, спасибо.
|
| Часовой пояс GMT +4, время: 05:20. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.