小编典典

如何解决无法静态引用非静态输入字段的错误?

java

我正在学习Java。我编写了以下代码,但是当我尝试输入时,我在Arrayfunction()中收到此错误“无法对非静态输入字段进行静态引用”。为什么会这样,我该如何解决?

import java.util.*;
public class MultidimArrays {

Scanner input= new Scanner(System.in);

public static void main(String args[])
{       
    int array[][]= new int[2][3];

    System.out.println("Passing array to a function");

    Arrayfunction(array);
}

public static void Arrayfunction(int array[][])
{
    System.out.println("Inside Array function");

    for(int i=0;i<array.length;i++)
    {
        for(int j=0;j<array[i].length;j++)
        {
            System.out.println("Enter a number");
            array[i][j]=input.nextInt();// error
    }
}

}


阅读 180

收藏
2020-11-26

共1个答案

小编典典

扫描仪未定义为静态,因此在错误的范围内

在内部创建Scanner实例, Arrayfunction或使用以下方法创建扫描仪

private static Scanner input= new Scanner(System.in);
2020-11-26