为什么编译时我的java程序中出现"无法找到符号"错误?

jdc*_*987 0 java return

我试图在我的代码结束时返回我的布尔变量localFound的值,但是当我编译时,我得到一个错误,说它无法找到符号.我知道这是一个处理变量范围的错误,但我不知道如何修复它.如何让我的程序返回正确的值?谢谢.

public static boolean addIfNotEmpty(DvdTreeNode root, String movieToCommand) {

  if (root == null) {
    return false;
  }
  addIfNotEmpty(root.getRight(), movieToCommand);
  if (root.getItem().getTitle().equalsIgnoreCase(movieToCommand)) {
    root.getItem().addCopy();
    System.out.println("You have added another copy of \""
    + movieToCommand
    + "\" to the inventory.");
    boolean localFound;
    localFound = true;
  }
  addIfNotEmpty(root.getLeft(), movieToCommand);
  return localFound;
} // end addIfNotEmpty 
Run Code Online (Sandbox Code Playgroud)

Mak*_*oto 5

localFound未在您的return陈述范围内定义.它只存在于您的if陈述中.

将声明if移到语句之外,并将其初始化为某个默认值,例如false.