(菜鸟的错误,我敢肯定。)
我是计算机科学专业的一年级学生,并尝试使用该代码编写用于作业的程序;
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);
}
}
但是在编译时,我得到了错误;
如果有人可以向我解释我做错了什么或如何解决,我将不胜感激。
最佳答案
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);