java SCJP不懂的题

来源:百度知道 编辑:UC知道 时间:2024/06/18 13:34:19
import java.text.*;
import java.lang.*;
import java.io.*;
public class Test
{
public static void main(String[] agrs)
{
NumberFormat nf = NumberFormat.getInstance();
nf.setMaximumFractionDigits(4);
nf.setMinimumFractionDigits(2);
String a=nf.format(3.1415926);
String b=nf.format(2);
System.out.println(a+" "+b+" ");

}

}
这个输出 3.1416 2.00

import java.text.*;
import java.util.*;
import java.lang.*;
import java.io.*;
public class Test
{
public static void main(String[] agrs)
{

double input = 314159.26;
NumberFormat nf = NumberFormat.getInstance(Locale.ITALIAN);
String b;
b = nf.format(input);
System.out.println(b);
}

}

这个输出输出314.15926
这两题怎么输出都这么奇怪,
第一题就输出小数点后有4位,整数又小数点只有2位?
第二题小数点又去了第三位?
有什么规律呢,不懂,请大家详细指教下

nf.setMaximumFractionDigits(4);
nf.setMinimumFractionDigits(2);
这个说:小数位数,最大4位,最小2位……

第二个应该是Locale.ITALIAN,意大利的数字格式?
反正大概这个意思。