我想把小鼠转化成为百分数,如
double result=0.051111122111111;
我想将其转化成为5。1%    

解决方案 »

  1.   

    java的默认库里没有百分数类型
      

  2.   

    NumberFormat num = NumberFormat.getPercentInstance(); 
    num.setMaximumIntegerDigits(3); 
    num.setMaximumFractionDigits(2); 
    double csdn = 0.20; 
    System.out.println(num.format(csdn));
      

  3.   


    public class Test1234 {
    public static void main(String[] args) {
    double result=0.051111122111111;
    int temp = (int)(result * 1000);
    result = (double)temp / 10;
    System.out.println(result + "%");


    }
    }
      

  4.   


    package csdnTest;import java.math.BigDecimal;public class Test {    public static void main(String[] args) {        double result = 0.051111122111111;        BigDecimal bigdec = new BigDecimal(result).multiply(new BigDecimal(100)).setScale(1, BigDecimal.ROUND_HALF_UP);
            System.out.println(bigdec + "%");    }
    }
      

  5.   

    import java.text.DecimalFormat;public class Test4 {    public static void main(String[] args) {
            double result=0.051111122111111;
            DecimalFormat df = new DecimalFormat("0.00%");
            String r = df.format(result);
            System.out.println(r);
        }
    }
      

  6.   

    不知你要不要四舍五入不,不要四舍五入的话7楼的很好
    ================================
    package com.csdn;/**
     * @author xiaotang E-mail: [email protected]
     * @version1.00 创建时间:Apr 11, 2009 1:53:12 AM 类说明:
     */public class HundrenTest { /**
     * 我想把小鼠转化成为百分数,如 double result=0.051111122111111; 我想将其转化成为5。1%
     */
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    double result=0.051511122111111;
    long l=Math.round(result*1000);
    System.out.print((l/10)+"."+(l%10)+"%"); }}
      

  7.   


    NumberFormat num = NumberFormat.getPercentInstance();
    num.setMaximumFractionDigits(1);
    double result=0.051111122111111;
    System.out.println(num.format(result));