Primitive Data Types - oracle doc dice que la gama de long
en Java es -9,223,372,036,854,775,808
-9,223,372,036,854,775,807
. Pero cuando hago algo como esto en mi EclipseInicializar mucho en Java
long i = 12345678910;
me muestra el error "The literal 12345678910 of type int is out of range
".
Hay 2 preguntas.
1) ¿Cómo inicializar el long
con el valor 12345678910
?
2) ¿Todos los literales numéricos son por defecto de tipo int
?
Long.valueOf (12345678910) debería funcionar. – Victor
En caso de que alguien se esté preguntando: lo mismo ocurre con el hexadecimal, p. Ej. '0x200000000L' – user149408
@Victor Long.valueOf (long) devuelve long, no primitive long. La solución de MByD evita confiar en el auto-boxeo. – gouessej