varias valores valor retornar retornan retorna recorrer que programacion metodos metodo mas java division

java - valores - El valor doble devuelve 0



recorrer tableview javafx (3)

Aquí hay un ejemplo:

Double d = (1/3); System.out.println(d);

Esto devuelve 0, no 0.33333 ... como debería.

¿Alguien sabe?


Esto se debe a que 1 y 3 se tratan como integers cuando no se especifica lo contrario, por lo que 1/3 evalúa como el integer 0 que luego se convierte en el double 0 . Para solucionarlo, intente (1.0/3) o tal vez 1D/3 para indicar explícitamente que está tratando con valores dobles.


Usa double y no Double a menos que necesites usar estos valores en el sentido del objeto. Tenga en cuenta los conceptos de Autoboxing


Si tiene int que quiere dividir usando división de punto flotante, tendrá que convertir el int en un double :

double d = (double)intValue1 / (double)intValue2

(En realidad, solo el lanzamiento de intValue2 debería ser suficiente para hacer que intValue1 se double automáticamente, creo).