class Main {
public static void main (String[] args){
long value = 1024 * 1024 * 1024 * 80;
System.out.println(Long.MAX_VALUE);
System.out.println(value);
}
}
de salida es:¿Multiplicar valores largos?
9223372036854775807 0
Es correcto si long value = 1024 * 1024 * 1024 * 80L;
!
aritmética en, por ejemplo, 'short's no se hace como' short's, está hecho como 'int's . –
Tom- Eso es muy interesante, nunca lo había sabido. Acabo de probarlo con dos cortos (en C#, pero acción similar), y HIZO la matemática como un entero ... Debe ser simplemente el uso de un int como el valor predeterminado para los tipos numéricos simples. – Erich
es decir corto x = 0; corto y = 0; x = x + y; daría un error de desajuste de tipo. – pmu