Así que tengo una cadena y quiero crear un objeto doble con la cadena como valor.¿Cuál es la diferencia entre llamar Double.valueOf (String s) y new Double (String s)?
puedo llamar
Double myDouble = new Double (myString);
o puedo llamar
Double myDouble = Double.valueOf(myString);
¿Hay alguna diferencia? Supongo que las primeras garantías de que se crea un nuevo objeto en el montón y el segundo pueden reutilizar un objeto existente.
Para crédito adicional: la cadena podría ser nula , en cuyo caso, quiero que el doble para ser nula, pero tanto el tiro por encima de una NullPointerException. ¿Hay una manera de escribir
Double myDouble = myString == null ? null : Double.valueOf(myString);
en menos código?
* ¿Cómo * quieres dar créditos extra? Estás limitado a * un * voto alternativo para cada respuesta ;-) –
* Supongo que las primeras garantías de que se crea un nuevo objeto en el montón y el segundo pueden volver a usar un objeto existente.* adivinas correctamente :-) –
@Andreas_D - Pensaba que tal vez se pagaron USD 1,000,000 en la cuenta de PayPal de alguien, pero tienes razón: el representante de Stack Overflow es mucho más valioso, por lo que retiro esa oferta; -] –