package com.sunxung.factoring.component.util;

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

/**
 * @ClassName:PercentageUtil
 * @Description:数字、百分数格式字符串转换工具
 * @Author:wanxiangZhou
 * @Email:303526821@qq.com
 * @Date:2017年4月1日 下午1:40:39
 */
public class PercentageUtil {

    /**
     * 将百分号数字字符串转换为数字格式，如80%转换为0.8
     * 
     * @param num
     * @return
     * @throws ParseException
     */
    public static Number convertDouble(String num) throws ParseException {
        NumberFormat format = NumberFormat.getPercentInstance();// 获取格式化类实例
        return format.parse(num);
    }

    /**
     * 将数字转换为对应的百分号格式的字符串，并设置2位小数位，如0.53转换为53.00%
     * 
     * @param num
     * @return
     */
    public static String convertPercentage(double num) {
        DecimalFormat format = new DecimalFormat("##.##%");
        format.setMinimumFractionDigits(2);// 设置小数位
        return format.format(num);
    }

    /**
     * 将数字转换为字符串，如80转为80.00%
     * 
     * @param num
     * @return
     */
    public static String stringDouble(double num) {
        NumberFormat format = NumberFormat.getPercentInstance();// 获取格式化类实例
        format.setMinimumFractionDigits(2);// 设置小数位
        return format.format(num / 100);
    }
}
