会点java编程的来啊

来源:百度知道 编辑:UC知道 时间:2024/05/23 09:49:21
import javax.swing.JOptionPane;
public class Yuan {
public static void main(String[] args) {
String n;
int i;
double j,s,l;
n=JOptionPane.showInputDialog("输入半径:");
i=Integer.parseInt(n);
j=i;
l=6.28*j;
s=3.14*j*j;

System.out.println("面积是:"+s+"\n周长是:"+l);
}
}
帮我看看这个的输出结果为什么面积有一位小数,而周长有15位小数呢??
我刚学这东西啊,难!

最简单的办法让两个结果都一样:
可以实验一下不对不要分!!!!
l=6.28*j;
s=3.14*(j*j);

import java.text.DecimalFormat;//数字格式化包
public static void main(String[] args) {
DecimalFormat df=new DecimalFormat(".00");//保留最后2位小数
String n;
int i;
double j,s,l;(因为你的double 是双精度浮点型,所以有那么多点)
n=JOptionPane.showInputDialog("输入半径:");
i=Integer.parseInt(n);
j=i;
l=6.28*j;
s=3.14*j*j;
String a=df.format(l);
String b=df.format(s);
System.out.println("面积是:"+a+"\n周长是:"+b);
}