如何从main方法访问数组?

时间:2018-12-12 18:55:14

标签: java arrays

public static int arraylistExample() {
    int length [] = new int [10];

    length[0] = 2;
    length[1] = 3;
    length[5] = 8;  

    return length [1];
}

我已经在main方法中写了这个: System.out.println(length [5]);

因此,我的代码如下:

import java.util.ArrayList;

public class Javanotes {

    public static void main(String[] args) {

        System.out.println(length[5]);
    }

    public static int arraylistExample() {
        int length [] = new int [10];

        length[0] = 2;
        length[1] = 3;
        length[5] = 8;  

        return length [1];
    }
}

我得到“ 0”怎么办?

2 个答案:

答案 0 :(得分:-1)

1)数组在arraylistExample()的方法范围内定义。在main()中看不到它。

2)如果您从不调用该方法,则该数组将为空。

您可以通过以下方式进行更改:

public class Javanotes {

    static int length [];

    public static void main(String[] args) {            
        System.out.println(arraylistExample()); // print 3
        System.out.println(length[5]); // print 8
    }

    public static int arraylistExample() {
        length = new int [10]; // init the static field

        length[0] = 2;
        length[1] = 3;
        length[5] = 8;  

        return length [1];
    }
}

但是请注意,在各处使用static通常是不正确的。
您可以对实用程序类进行此操作。

答案 1 :(得分:-1)

您应在调用函数之前声明它。 主类看不到您的函数 arraylistexample