在我的代码中,我只是试图做一个简单的程序,告诉你如果一个数字可以平均分成另一个数字(在这种情况下,该数字是3)。现在我要说的是,如果x(数字不能均等地加上0.01,那会给我堆栈溢出错误,如果我把它的值设为0.2,那么说9是可以除以3的整数。 。进入三三后6递归方法堆栈溢出错误
public class divisible {
public static void divide(double x) {
double three = 3;
double value = x%three;
if (value==0) {
System.out.println(x + " is a divisible of 3 ");
return;
}else{
//System.out.println("x does not divide evenly into 3");
divide(x+(.01));
}
}
public static void main(String args[]) {
divide(4);
}
}
System.out.println(x);你可以在你的其他声明中试试这个吗?它可以帮助你确定x是什么,看看它是否变成了6. – 2013-03-02 07:17:25
有一个名为'three'的变量和给它赋值'3'是非常多余的。你应该有一个有意义的名字,并把它变成一个类变量。 – Maroun 2013-03-02 07:27:27