¿Debería el desempaquetado automático de números en Java usar Number.xxxValue () en lugar de convertirlo a XXX.xxxValue ()?

Los ejemplos funcionan mejor, imagine que Object es un Byte e intentamos convertirlo en un largo ...

Actualmente el código de bytes se parece un poco a esto

   Byte b = Byte.valueOf(1);
   Object source = b;
   Long long = (Long) source;     // fails CCE because a Byte is not a Long
   long value = long.longValue();

¿No sería mejor un reparto a Number?

  Byte b = Byte.valueOf(1);
   Number number = (Number) b;     // f
   long value = number.longValue();

El problema real es, por supuesto, que hemos reducido la posibilidad de ClassCastExceptions, ¿es eso algo malo?

Respuesta 1

¿Por qué lanzar en absoluto? Bytes tienen el longValue()método también.

Byte b = Byte.valueOf(1);
long value = b.longValue();

O mejor aún:

byte b = 1;
long value = (long) b;
Respuesta: 2

Si no le importa cuál es el tipo original, simplemente emitiría un Número como lo ha hecho.

Respuesta: 3

Estoy usando el dominio de datos para la autenticación de inicio de sesión. funciona bien. También estoy usando componentes primefaces 3.2 en mi aplicación, también funcionan bien, PERO el problema ocurre en la página de inicio antes de iniciar sesión. Las primeras caras ...

Estoy haciendo una aplicación en Android. Tengo muchos archivos en el servidor como abc.doc, abc.xls, abc.mp3, etc. Quiero descargar todos estos archivos en un solo archivo como .zip, .rar y luego almacenarlos en la SDCARD. Que ...

Recientemente instalé el complemento del generador de ventanas en mi Eclipse IDE. Cuando creo un nuevo proyecto y agrego un generador de ventanas o cualquier cosa, no puedo arrastrar ni siquiera un botón de la paleta. Podría estar arrastrando ...

Tengo un mapa como este MAPA: {facilidad-1 = {facilidad-tipo1 = {param1 = XPath-1, param2 = XPath-2}, facilidad-tipo2 = {param1 = XPath-1, param2 = XPath-2}, facilities-kind3 = {param1 = XPath-1, param2 = ...