|
|
|
Беззнаковые числа (а всё таки почему их нет в Яве)?
|
|||
|---|---|---|---|
|
#18+
2 автор Что то вроде этого? C++/C# Код: plaintext 1. Java Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2006, 17:14:59 |
|
||
|
Беззнаковые числа (а всё таки почему их нет в Яве)?
|
|||
|---|---|---|---|
|
#18+
ну вроде того ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2006, 22:25:19 |
|
||
|
Беззнаковые числа (а всё таки почему их нет в Яве)?
|
|||
|---|---|---|---|
|
#18+
mayton2 автор Что то вроде этого? Java Код: plaintext 1. Вроде этого Код: plaintext 1. 2unicornmirage: Вообще-то в цитировании речь шла об int и byte, а не byte и int. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2006, 13:21:48 |
|
||
|
Беззнаковые числа (а всё таки почему их нет в Яве)?
|
|||
|---|---|---|---|
|
#18+
NotGonnaGetUs Я один такой тупой идиот, что не может придумать зачем нужны такие типы данных? Я сейчас пишу генератор AFP-документов, там все данные в потоке документа - беззнаковые. Например, надо записать управляющий код 0xf7 , пишешь writeByte( 0xf7 ); ... void writeByte( byte val ); и обламываешься. 0xf7 - во-первых, int, а во вторых, в byte не влазит. Писать -0x77 не хочется, потому что это - код, он должен быть таким, какой он есть. Чтобы сразу узнавался. Вот и приходится писать void writeByte( short val ); // когда думаешь byte void writeShort( int val ); // когда думаешь short и так далее. Может быть это моя С-шная зашоренность, и можно как-то еще это проще сделать, но я что-то не нашел другого способа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 23:47:54 |
|
||
|
Беззнаковые числа (а всё таки почему их нет в Яве)?
|
|||
|---|---|---|---|
|
#18+
А вот так работают настоящие стахановцы - http://www.darksleep.com/player/JavaAndUnsignedTypes.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2006, 07:09:46 |
|
||
|
Беззнаковые числа (а всё таки почему их нет в Яве)?
|
|||
|---|---|---|---|
|
#18+
MasterZiv NotGonnaGetUs Я один такой тупой идиот, что не может придумать зачем нужны такие типы данных? Я сейчас пишу генератор AFP-документов, там все данные в потоке документа - беззнаковые. Например, надо записать управляющий код 0xf7 , пишешь writeByte( 0xf7 ); ... void writeByte( byte val ); и обламываешься. 0xf7 - во-первых, int, а во вторых, в byte не влазит. Писать -0x77 не хочется, потому что это - код, он должен быть таким, какой он есть. Чтобы сразу узнавался. Вот и приходится писать void writeByte( short val ); // когда думаешь byte void writeShort( int val ); // когда думаешь short и так далее. Может быть это моя С-шная зашоренность, и можно как-то еще это проще сделать, но я что-то не нашел другого способа. 0xF7 прекрасно влазит в байт. Получается -9 или если в двоичном виде - то 11110111. Подумай вот над этим: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2006, 07:24:42 |
|
||
|
Беззнаковые числа (а всё таки почему их нет в Яве)?
|
|||
|---|---|---|---|
|
#18+
Задача: На вход поступает массив byte[] = { 0xd9, 0x9f, 0x24 } Надо преобразовать его в целое число, считая, что byte[0] -- это младший байт, byte[1] -- это средний байт, byte[2] -- это старший байт Если тупо посчитать по формуле byte[0] + byte[1]*256 + byte[2]*256*256, то ответ будет неверным из-за того, что Java криво работает с беззнаковыми числами. пробовал делать так: (int)(byte[0]) + ((int)(byte[1])*256) + (((int)byte[2])*256*256) -- ответ тоже не соответствует правильному попробовал так: (long)(byte[0]) + ((long)(byte[1])*256) + (((long)byte[2])*256*256) Тоже не работает! Потом ещё много чего пробовал... Сдвиги, например... Блин! Как же посчитать формулу y=a+b*256+c*256*256 на Java? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2013, 18:31:13 |
|
||
|
Беззнаковые числа (а всё таки почему их нет в Яве)?
|
|||
|---|---|---|---|
|
#18+
Tamachi, (byte[0] &0xFF) + (byte[1] & 0xFF) * 256 + (byte[2] &0xFF) *256*256 Или даже (byte[0] &0xFF) + ((byte[1] & 0xFF) << 8) + ((byte[2] &0xFF) << 16) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2013, 18:45:39 |
|
||
|
Беззнаковые числа (а всё таки почему их нет в Яве)?
|
|||
|---|---|---|---|
|
#18+
Tamachi, Может не надо ничего счетать, а просто прочитать long? http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=947160&msg=12688953 (тут double) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2013, 18:49:31 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38206265&tid=2129648]: |
0ms |
get settings: |
20ms |
get forum list: |
23ms |
check forum access: |
7ms |
check topic access: |
7ms |
track hit: |
57ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
| others: | 309ms |
| total: | 502ms |

| 0 / 0 |
