me escribió un método para convertir un número determinado de días a milisegundos:Java comportamiento operación de multiplicación
private long expireTimeInMilliseconds;
...
public void setExpireTimeInDays(int expireTimeInDays)
{
expireTimeInMilliseconds = expireTimeInDays * 24 * 60 * 60 * 1000;
}
Tuve un tiempo difícil averiguar lo que hice mal. Ahora mi pregunta: ¿Es ese error tan obvio?
El método corregido:
private long expireTimeInMilliseconds;
...
public void setExpireTimeInDays(int expireTimeInDays)
{
expireTimeInMilliseconds = ((long) expireTimeInDays) * 24 * 60 * 60 * 1000;
}
Si no me convierto al entero a tiempo antes de calcular, me sale un resultado erróneo completa.
También podría agregar una L a las constantes. – starblue
¿Por qué la gente quiere cerrar esto? Parece una pregunta legítima que podría ayudar a otras personas. Si es un duplicado exacto, dígalo. –
También podría declarar constantes durante tanto tiempo: 24L * 60L ... –