当前位置: 首页 > 知识库问答 >
问题:

Java:“错误:找不到符号”

韦鸣
2023-03-14

(菜鸟失误,我确定。)

我是计算机科学专业的一年级学生,正在尝试用代码编写作业程序;

import java.util.Scanner;
public class Lab10Ex1 {

   public static void main(String[] arg) {

    Scanner keyboard = new Scanner(System.in);
    System.out.println("Please type a number: ");
    int n = keyboard.nextInt(); 
    calcNumFactors();
  }
  public static void calcNumFactors(){

   System.out.print(n + 1);

  }

}

但是在编译时,我得到了错误;

Lab10Ex1.java:10: 错误: 找不到符号 System.out.print(n 1);^

符号:变量n

位置: 班级 Lab10Ex1

如果有人能向我解释我做错了什么,或者如何纠正它,我会非常感激。

共有3个答案

林炫明
2023-03-14
import java.util.Scanner;
public class Lab10Ex1 {

   private static int n;

   public static void main(String[] arg) {
    Scanner keyboard = new Scanner(System.in);
    System.out.println("Please type a number: ");
     n = keyboard.nextInt(); 
    calcNumFactors();
  }
  public static void calcNumFactors(){

   System.out.print(n + 1);

  }
}
康锦
2023-03-14

您必须在< code > public static void calcNumFactors()中声明变量< code>n

在您的代码中,您必须将n的值作为参数传递给函数< code>calcNumFactors(),就像装满Eels的气垫船所说的那样。

傅砚
2023-03-14

n变量是在main方法中声明的,因此仅在main方法中可见,在其他任何地方都不可见,当然在calcNumFactors方法中也不可见。要解决这个问题,请为您的calcNumFactors方法提供一个int参数,该参数允许调用方法将int,例如n传递到方法中。

public static void calcNumFactors(int number) {
   // work with number in here
}

并这样称呼它:

int n = keyboard.nextInt(); 
calcNumFactors(n);
 类似资料:
  • 问题内容: 我使用时代码工作正常 吗?在我看来这很奇怪。 (错误显示在终端上) 问题答案: 这是 Arrays 类的静态方法。 您应该像这样调用它: 请注意,您仍然必须像这样导入Arrays类: 或者像其他人提到的那样,如果您进行静态导入,则可以省略类名。 我认为这样做对可读性更好。

  • 问题内容: 错误: 出现的内容不起作用: 如果我写:“ InvoerVakhandler扩展了boven”,则该错误消失了,但是随后我得到了一个无限循环,最后程序崩溃并说堆栈溢出错误。 如果我尝试更改boven类中的“}”符号并将其放置在文本的末尾,那么我什至会收到更多错误消息。 问题: 我必须在代码中进行哪些更改才能使其正常工作? 注意: 我是Java的新手,我知道有更多类似这样的文章,但是由于

  • 问题内容: 嘿,我刚开始我的第一本Java编程书籍,所以这应该很容易解决。弄乱我对条件句的新知识,发现标题错误。 这是代码: 当我尝试编译时: 问题答案: 错误消息告诉您变量“输入”在您的作用域中不存在。您可能想使用Scanner对象,但将其命名为“ x”,而不是“ input”。 应该修复它。

  • 这里有一个类似的答案:如何在Java中将函数作为参数传递? 但提供的正确答案不起作用。我有一门课: 在函数内部我试图将传递到,但我得到的错误是: 找不到符号 符号:类Callable 我不知道为什么。 另外,我尝试使用返回类型字符串作为xMethod,您能传递一个返回类型不同的函数吗?

  • 我有一个问题,我试图实现一个JMenuBar,但不断得到一个不能找到符号错误。我将JFrame与main方法一起放在一个单独的类中,JFrame将安装MainPanel类的一个对象。我在这里漏掉了什么?如有任何帮助将不胜感激,谢谢! 符号:方法setJMenuBar(JMenuBar) 位置:类主面板

  • 嘿,我刚刚开始我的第一本关于Java的编程书,所以这应该是一个简单的修复。把我对条件句的新知识弄得乱七八糟的,结果我得到了标题错误。 代码如下: 当我尝试编译: