调用方法错误

Calling method wrong

我正在学习 JAVA 并尝试编写一个程序来对任意数量的整数进行求和和平均。我为此制作了两种方法,一种采用条目数:

private Scanner takeNumberOfEntries(){
    Scanner numberOfEntries = new Scanner(System.in);
    System.out.println("Number of entries:");

    while (!numberOfEntries.hasNextInt()){
        System.out.println("Enter the right format");
        numberOfEntries.next(); 
    }
    return numberOfEntries;
} 

并将其传递给另一个读取输入并将其存储在数组中的人:

private void summingAndAveraging(Scanner numberOfEntries){
    int entryCountLimit = numberOfEntries.nextInt();
    int[] inputArray = new int[entryCountLimit];

    System.out.println("Enter the integer values");

    for (int i = 0; i < entryCountLimit ; i++){
        Scanner inputValues = new Scanner(System.in);
        while (!inputValues.hasNextInt()){
            System.out.println("fu k you, enter again:");
            inputValues.next();
        }

        inputArray[i] = (int) inputValues.nextInt();
    }

}

当我尝试在 main 中调用它时,出现错误。我都试过了:

    takeNumberOfEntries instant = new takeNumberOfEntries();

扫描器实例化 = new takeNumberOfEntries();

我不确定我做错了什么。

您不能实例化一个函数,而只能实例化一个 class。

takeNumberOfEntries() 是函数。

如果您按如下方式定义myClass,您可以使用new实例化它的一个实例,如下所示:

public class myClass{

}

MyClass instance = new Myclass;

这里有两个问题,一个语法问题,一个概念问题(后面可能会变成语法问题)。

第一个 - 在调用任何函数之前,您必须实例化一个 class。实例化存在这些特定方法的 class。

MyClass myClass = new MyClass();

其次 - 您不希望保留这些方法 private。它们对 class 声明之外的任何内容都不可见。至少将 summingAndAveraging 更改为 public 以便它可以在其他地方调用。

您不能实例化函数。您必须实例化一个 class 然后调用一个函数。

public class Class {

public void function() {

}

public static void main(String[] args) {
    Class instance = new Class();

    instance.function();
}

}