En OpenJDK, para el método:¿Por qué Double.valueof javadoc dice que almacena valores en caché, cuando no?
public static Double valueOf(double d)
el Javadoc dice:
devuelve una instancia de doble representa el valor doble especificado. Si no se requiere una nueva instancia doble, este método generalmente se debe usar con preferencia al constructor Doble (doble), ya que es probable que este método produzca un mejor rendimiento de espacio y tiempo al almacenar en caché los valores frecuentemente solicitados.
Aquí está el código real:
public static Double valueOf(double d) {
return new Double(d);
}
La memoria caché es una mentira! ¿Que está pasando aqui?
La documentación siempre es incorrecta. Recuerda eso. –
¿De dónde saca el código de todos modos? OpenJDK6? OpenJDK7? Apache Harmony? GNU Classpath? – scravy
@scravy Estoy viendo OpenJDK7 pero este código no ha cambiado durante años en los lanzamientos oficiales de Sun. –