宜宾桶装水哪家好:java编程初级问题Exception in thred "main" java.lang.。。。

来源:百度文库 编辑:中科新闻网 时间:2024/04/29 07:01:33
运行时提示:
Exception in thread "main" java.util.IllegalFormatCoversionException:d!=java.lang.Double...

附源程序:
import java.util.*;
import java.lang.*;
public class Example33
{
public static void main(String args[])
{
int i=1,j=1;
double k=1;
double sum=0;
for(i=1;i<1000;i++)
{
sum=sum+k;
k=Math.pow((-1),i)*(1/(j+2));
j=j+2;
System.out.printf("%d\n",k);
}
System.out.printf("Sum= %d ",sum);
}
}
我用的是JDK1.5,所以可以用System.out.printf()吧;

出错的原因是这样的:
System.out.printf的格式是
System.out.printf(String, Object[])
后面一个参数必须是对象
例如:System.out.printf ("pi = %5.3f, e = %5.4f %n", Math.PI, Math.E);
而你这里k和sum都是变量,不是对象,所以这个函数不适用

你那么写即不是C也不是java

public class Example33
{
public static void main(String args[])
{
int i=1,j=1;
double k=1;
double sum=0;
for(i=1;i<1000;i++)
{
sum=sum+k;
k=Math.pow((-1),i)*(1/(j+2));
j=j+2;
System.out.println(k);
}
System.out.println("Sum= "+sum);
}
}

你的环境变量没有配置好才出现这种问题的,和你的源代码无关。如果你用的软件是JBuilder 7.0,而且版本是JDK1.3.1的话,你应该在右键“我的电脑”---“属性”---“高级”---“环境变量”---“PATH”里输入“C:\JBuilder7\jdk1.3.1\BIN”,在“CLASSPATH”里出入“C:\JBuilder7\jdk1.3.1\LIB”。用户变量和下面的系统变量要一致哦~就可以了。注意大小写。
还有,输入怎么能用printf呢?在JAVA里应该是println吧。。

你确定是学过java么?
说实话,程序写的不是很好,再看看书,把格式修改一下吧.
这一句不需要:import java.lang.*;
各个数字的赋值处理和输出的格式要注意一下

看开头像是学过,不多,后面就不太像了

开始先配置一下环境,在改改格式,简单的一会就弄明白了

你应该多看看java书的基础知识,你写的这个非C非J的,呵呵比如最基本的输出格试就不对!System.out.println(sum);可能直接把要输出的内容放到里面就行了