我是Eclipse的新手,我正试图简单地编写一个简单的代码。但是当我开始调试时,会发生一些错误,我不明白为什么。] 1
这里告诉我,我正在使用过时的方法。并且有两个变量,debbug看不到“resultZero”和“resultOne” 在此处输入图像描述
Exercise22.java
public class Exercise22 {
public static void main(String[] args){
int[] A = new int[20];
float countZero = 0;
float countOne = 0;
float resultZero = 0;
float resultOne = 0;
for (int i = 0; i<A.length; i++){
A[i] = (int)Math.round(Math.random() * 1);
if (A[i] == 0){
countZero += 1;
} else {
countOne += 1;
}
}
for (int i = 0; i<A.length; i++){
System.out.println("Value: " + A[i]);
}
resultZero = (countZero / A.length) * 100;
resultOne = (countOne / A.length) * 100;
System.out.println("Zero: " + resultZero + "%");
System.out.println("One: " + resultOne + "%");
}
}
答案 0 :(得分:3)
此错误消息表明您正在进行热代码替换 堆栈上的帧不再与正在运行的VM中的类文件匹配。 重新启动调试会话/目标VM就足够了。
如果这不起作用..那么第二个原因可能是......你在构建完成之前运行应用程序。尝试一次,您也可以更改设置 见首选项
运行/调试&gt;等待正在进行的构建在启动之前完成。
答案 1 :(得分:2)
您试图在调试过程中更改代码,并且在运行代码并且构建未完成时,eclipse有时会启动该错误。只需创建一个新项目并将代码复制到那里。这里有一个更优雅的解决方案:&#34; https://www.eclipse.org/forums/index.php/t/57630/&#34;但它只有在你有3.0或更高的日食时才有效。你没有提到你正在使用的版本,我发现最好给你替代品。