Tengo algunos datos en las variables int
en Java (rango entre 0 y 64000). ¿Cómo convertir a byte este entero? Solo necesito dos bytes más bajos desde int
(el rango está bien). Cómo extraer esto?Obtenga dos bytes más bajos de la variable int
11
A
Respuesta
22
, usted puede obtener el byte más bajo desde el número entero por AND con 0xFF
:
byte lowByte = (byte)(value & 0xFF);
Esto funciona porque tiene 0xFF
bits cero en todas partes por encima del primer byte.
Para obtener la segunda más baja bytes, puede repetir este truco después de desplazar hacia abajo todos los bits en el número 8 puntos:
byte penultimateByte = (byte)((value >> 8) & 0xFF);
3
Usted no tiene que hacer y operación para obtener el menor byte simplemente lo lanza al byte y obtiene el byte más bajo en la variable byte.
intente seguir tanto le dará mismo resultado
short value = 257;
System.out.println(value);
byte low = (byte) value;
System.out.println("low: " + low);
byte high = (byte)(value >> 8);
System.out.println("high: " + high);
value = 257;
System.out.println(value);
low = (byte) (value & 0xFF);
System.out.println("low: " + low);
high = (byte) ((value >> 8) & 0xFF);
System.out.println("high: " + high);
o probarlo en Ideone.com
Cuestiones relacionadas
- 1. ¿Cómo obtengo los 8 bits más bajos de int?
- 2. ¿Cómo convierto un int a dos bytes en C#?
- 3. Obtenga bytes de std :: string en C++
- 4. Int matriz de bytes a
- 5. C# int conversión de bytes
- 6. Convertir 4 bytes a int
- 7. forma más limpia de combinar dos cortos a un int
- 8. Obtenga la cantidad de dígitos en un int
- 9. Obtenga la cantidad de bytes necesarios para una cadena Unicode
- 10. ¿La forma más corta de convertir estos bytes a int en python?
- 11. Float e Int ¿Ambos 4 bytes? ¿Cómo?
- 12. conversión de bytes a int en Java
- 13. Rails 3. Obtenga la actualización más reciente
- 14. Kindle: obtenga la ubicación más leída
- 15. SPARQL: Obtenga la "propiedad más específica"
- 16. Obtenga STDOUT en una variable
- 17. T-SQL Obtenga bytes de VARCHAR sin convertir a UNICODE
- 18. La determinación del número de bytes utilizados por una variable
- 19. ¿Cuál es la forma más rápida de comparar matrices de dos bytes?
- 20. Reemplazar los guiones bajos en la cadena
- 21. ¿Lees dos bytes en un número entero?
- 22. ¿Cómo convertir una matriz de bytes a una matriz int?
- 23. La forma más rápida de leer bytes en D2
- 24. Convertir 16 bits con la firma int a 2 bytes?
- 25. Obtenga la diferencia entre dos listas usando LINQ
- 26. Seleccione solo los valores más bajos con Linq
- 27. Enchufes, obtenga el número de bytes disponible (C#)
- 28. Django: obtenga la salida de HTML en una variable
- 29. Java - ¿Convertir int a Byte Array de 4 bytes?
- 30. variable int con cero inicial?
1 aunque no es un truco, se llama "desplazamiento aritmético" ;-) –