@Baal. En realidad no es difícil de entender el código que puse anteriormente. Tampoco añadí algún Cast, en el primero sí hice un cast a Double. Sobre los casts, simplemente se fuerza a un tipo de dato convertirse en otro.
El código anterior se podría traspasar más limpio de la siguiente manera:
PD: Si solucionaste tu problema no olvides marcar el título con un check verde. Salu2.
Saludos!
El código anterior se podría traspasar más limpio de la siguiente manera:
Código (java) [Seleccionar]
import java.util.Random;
import java.text.DecimalFormat;
public class DecimalNumberGenerator {
private final static int NUMBER_MULTIPLICITY = 10;
public static Double buildNumberWithTwoDecimals() {
return generateNumber();
}
private static Double generateNumber() {
DecimalFormat twoDecimalsFormatter = new DecimalFormat("#.00");
Random randomNumberGenerator = new Random(System.nanoTime());
double generatedNumber = randomNumberGenerator.nextDouble() * NUMBER_MULTIPLICITY;
String formattedNumber = twoDecimalsFormatter.format(generatedNumber);
// es necesario porque DecimalFormat usa el delimitador decimal ","
formattedNumber = formattedNumber.replace("," , ".");
return Double.parseDouble(formattedNumber);
}
}
PD: Si solucionaste tu problema no olvides marcar el título con un check verde. Salu2.
Saludos!