public class RollDie {
public static void main (String args[])
{
int frequency[],face;
frequency=new int[7];
for(int roll=1;roll<=6000;roll++){
face=1+(int)(Math.random()*6);
frequency[face]++;
}
for (int i=1;i<=6;i++)
System.out.print("frequency("+i+")\t"+frequency[i]+"\n");
}
}
出现错误:java.lang.NoClassDefFoundError: RollDie
Exception in thread "main"
文件名和类名没错,用的是Jbuilder2006 企业版,运行后出现了这个,是不是跟JDK没更新有关系,上次网上有个更新JDK核心,不过老师说不用了,自己不懂,也就没弄了。
还有程序中那个 frequency=new int[7]; 是什么意思,为什么是7,请高手指教。
------解决方案--------------------
应该是JBuilder配置的问题,检查一下运行时的配置
------解决方案--------------------
为什么是7 定义数组长度为7位 也就是存储最多7个数字 face=1+(int)(Math.random()*6);
定义为7的话 数组就不可能越界了 如果是6可能越界
------解决方案--------------------
没用过jbuilder
------解决方案--------------------
这个可能是你最近安装了什么软件,比如oralce之类的,
把classpath的路径重写了!
你改过来看看!
------解决方案--------------------
初学的话.还是用ultraedit吧!在DOS下编译.
------解决方案--------------------
我也是初学者!
我用EditPlus
然后在命令行下编译这个程序,是正确的
因为:face=1+(int)(Math.random()*6);
frequency[face]++;
face的值为1、2、3、4、5、6
只有定义为7才会使数组里有frequency[6]啊
否则越界了
------解决方案--------------------
是不是路径设置错了呀