JAVA中将给定的数字按给定的形式输出

在项目中将金额每隔3位加一个","格式输出

/**
	 * 
	 * 将给定的数字按给定的形式输出
	 * 
	 * @param d
	 *            double
	 * 
	 * @param pattern
	 *            String
	 * 
	 *            #:表示有数字则输出数字,没有则空,如果输出位数多于#的位数,
	 * 
	 *            则超长输入
	 * 
	 *            0:有数字则输出数字,没有补0
	 * 
	 *            对于小数,有几个#或0,就保留几位的小数;
	 * 
	 *            例如: "###.00" -->表示输出的数值保留两位小数,不足两位的
	 * 
	 *            补0,多于两位的四舍五入
	 * 
	 *            "###.0#" -->表示输出的数值可以保留一位或两位小数;
	 * 
	 *            整数显示为有一位小数,一位或两位小数
	 * 
	 *            的按原样显示,多于两位的四舍五入;
	 * 
	 *            "###" --->表示为整数,小数部分四舍五入
	 * 
	 *            ".###" -->12.234显示为.234
	 * 
	 *            "#,###.0#" -->表示整数每隔3位加一个",";
	 * 
	 * @param l
	 *            Locale
	 * 
	 * @return String
	 * 
	 */
	public static String formatNumber(double d, String pattern, Locale l) {
		if (d == 0) {
			return "0.00";
		}
		String s = "0.00";
		try {

			DecimalFormat nf = (DecimalFormat) NumberFormat.getInstance(l);
			nf.applyPattern(pattern);
			s = nf.format(d);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return s;
	}

	/**
	 * 将数字转换成金额样式
	 * 
	 * @param d
	 *            数字
	 * @return 统一样式,例如11,111.12
	 */
	public static String formatNumberSimple(double d) {
		return formatNumber(d, "#,###.00", Locale.SIMPLIFIED_CHINESE);
	}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值