package org.jruby.util;
import java.math.BigDecimal;
A safer way to parse float values
Prevents brute force attacks using the famous Java bug.
/**
* A safer way to parse float values
* <p>
* Prevents brute force attacks using the famous Java bug.
*/
public final class SafeFloatParser extends SafeDecimalParser {
Safe way of parsing a Float value from a String
Params: - s –
The input String
Returns: the Float value
/**
* Safe way of parsing a Float value from a String
*
* @param s
* The input String
* @return the Float value
*/
public static Float valueOf(String s) {
Float result = null;
Double decimalValue = decimalValueOf(s);
if (decimalValue != null) {
result = Float.valueOf(decimalValue.floatValue());
}
return result;
}
Safe way of parsing a Float value from a String
Params: - s –
The input String
Returns: the Float value
/**
* Safe way of parsing a Float value from a String
*
* @param s
* The input String
* @return the Float value
*/
public static Float parseFloat(String s) {
return valueOf(s);
}
Safe way of getting the float value
prevents BigDecimal from calling Float.parseFloat()
Params: - number –
Returns: the float value
/**
* Safe way of getting the float value<br>
* prevents BigDecimal from calling Float.parseFloat()
*
* @param number
* @return the float value
*/
public static float floatValue(Number number) {
return Float.valueOf((float)decimalValue(number));
}
Safe way of getting the float value
Prevents BigDecimal from calling Float.parseFloat()
Params: - bigDecimal –
Returns: the float value
/**
* Safe way of getting the float value<br>
* Prevents BigDecimal from calling Float.parseFloat()
*
* @param bigDecimal
* @return the float value
*/
public static float floatValue(BigDecimal bigDecimal) {
return Float.valueOf((float)decimalValue(bigDecimal));
}
}