在家庭作业中错位的构造

时间:2010-10-31 19:52:14

标签: java construct

我首先在eclipse中完成所有编程任务,然后将它们放入putty并将它们提交给我们的老师。在eclipse中,我的一种方法中出现了这个奇怪的错误。

它说“令牌上的语法错误,错误放置的构造。”

public static int factorial(int iVal, boolean DEBUG)
{
 int result;
    // Defensive programming
 if(iVal <= 0)
 {
  System.out.println("Error: iVal cannot be a negative number!");
  System.exit(0);
 }
    // Calculate result
 int factor = iVal;
 int counter = iVal - 1;
 for(int i = counter; i > 1; i--)
 {
  if(DEBUG = true)
  {
   System.out.println("DEBUG");
    System.out.println("   Finding the factorial of " + factor);
   System.out.println("   Currently working on " + i);
   System.out.println("   With an intermediate result of" + iVal);
  }
  iVal *= i;
 }
       result = iVal;
    // Return result
       return result;
} // End of factorial method

错误放在由

组成的行上
System.out.println("   Currently working on " + i);

有什么想法吗?

2 个答案:

答案 0 :(得分:4)

if(DEBUG = true)

比较为==,作业为= 此外,如果您只是测试一个布尔值,则根本不需要进行比较,只需使用

即可
if(DEBUG)

答案 1 :(得分:1)

您在if语句中有一个作业:

if(DEBUG = true){

这是合法的(和编译),因为DEBUG的类型为boolean,但始终为true