El tipo de byte es extraño

Necesito enviar algunos bytes a través del protocolo UDP. El comando de inicio es 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF

Cuando defino esto:

byte [] begin = {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF}; 

Consigo un error que dice que necesito emitir éstos al tipo del byte. Por lo que sé 0xFF no excede el tipo de byte, así que ¿cuál es el problema?

Si escribo esto funciona:

 byte [] begin = {(byte) 0xFF,(byte) 0xFF,(byte) 0xFF,(byte) 0xFF,(byte) 0xFF,(byte) 0xFF}; 

2 Solutions collect form web for “El tipo de byte es extraño”

Por lo que sé 0xFF no excede el tipo de byte, así que ¿cuál es el problema?

En realidad lo hace. Los bytes se firman en Java, por lo que el rango es de -0x80 a 0x7f (inclusive).

(El hecho de que el tipo de byte está firmado es un dolor en el cuello, pero ahí vamos …)

Cualquier número literal en java se compila como un int. Incluso si se declara en una situación como aquí, donde un byte es el valor esperado. El elenco es la cosa que realmente transforma ese int literal en un byte.

  • Problema personalizado de ProgressBarPreference en Android
  • Extraño error "java.io.IOException: EOF" en Android
  • Combinación de celdas en Excel mediante Apache POI
  • Uso de cookies en las actividades al utilizar HttpClient
  • ¿Hay alguna manera de agregar parámetros de consulta a cada solicitud con Retrofit 2?
  • LibGDX - ¿Cómo Gdx.graphics.getWidth () devuelve el ancho de la superficie de visualización?
  • Carpeta de activos en Android Studio Unit Test
  • Thread / Handler error - El token de barrera de sincronización de cola de mensajes especificado no se ha publicado
  • No se puede encontrar la clase de Android CalendarView
  • Lectura rápida de enteros pequeños endian de archivo
  • Ajuste del valor de la hiladora dinámicamente
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.