DecimalUtil


import java.text.DecimalFormat;
import java.text.ParseException;


import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;


/**
 *  
 * <p>DecimalUtil.java</p> 
 * <p>Decimal Utility</p>
 * @author mshi
 * @version 1.0  Jul 20, 2011 10:00:00 AM
 */
public class DecimalUtil {

private static Log logger = LogFactory.getLog(DecimalUtil.class);

private DecimalUtil(){}

/**
* 初始金额格式
*/
public static String MONEY_PATTERN = "#,##0.00#";

/**
* 初始数字格式
*/
public static String FLOAT_PATTERN = "#0.0########################";


/**
* 格式化金额(千分位)
* @param numStr
* @return 
* @author mshi
*/
public static final double parseMoney(String numStr) {
return parse(numStr, MONEY_PATTERN);
}


/**
* 格式化数字
* @param numStr
* @return 
* @author mshi
*/
public static final double parseNumber(String numStr) {
return parse(numStr, FLOAT_PATTERN);
}

/**
* 格式化
* @param numStr
* @param pattern 格式
* @return 
* @author mshi
*/
public static final double parse(String numStr, String pattern) {
double decimal = 0;
try {
DecimalFormat decFmt = new DecimalFormat(pattern);
decimal = decFmt.parse(numStr).doubleValue();
} catch (ParseException e) {
logger.error("parse(String) parse error", e);
}
return decimal;
}
/**
* 格式化金额(千分位)
* @param numStr
* @return 
* @author mshi
*/
public static final String formatMoney(double decimal) {
return format(decimal, MONEY_PATTERN);
}


/**
* 格式化数字
* @param numStr
* @return 
* @author mshi
*/
public static final String formatNumber(double decimal) {
return format(decimal, FLOAT_PATTERN);
}

/**
* 格式化金额
* @param numStr
* @param pattern 格式
* @return 
* @author mshi
*/
public static final String format(double decimal, String pattern) {
DecimalFormat decFmt = new DecimalFormat(pattern);
return decFmt.format(decimal);
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值