从java中的另一个类访问静态arraylist

wkftcu5l  于 2021-07-06  发布在  Java
关注(0)|答案(2)|浏览(381)

arraylist需要设置为静态。我在主类(citymenucreate)中创建了一个getter方法,在第二个类中,我确实调用了该方法,当我尝试创建for函数时,它无法识别列表。
我在第一个类中创建的方法(citymenucreate)

public static ArrayList getCityList() {
    return cityList;
}

我试图在第二个类中调用方法的代码部分

CityMenuCreate.getCityList();
for(int i=0; i<**cityList.size();**i++) {

}

它在citylist.size()中给了我一个错误;。for函数有语法问题吗?

j91ykkif

j91ykkif1#

在上面的示例中,您已经声明了 getCityList() 方法,而不是数组列表。因此,不能以静态方式访问arraylist。要么声明arraylist为静态,要么在for循环中调用方法,如下所示:

for (int i = 0; i < CityMenuCreate.getCityList().size(); i++) {
     //Your code goes here
 }
hc8w905p

hc8w905p2#

你忽略了 CityMenuCreate.getCityList() . 您需要将其保存到局部变量:

List cityList = CityMenuCreate.getCityList();
for (int i = 0; i < cityList.size(); i++) {
    // code
}

或者直接用这个方法:

for (int i = 0; i < CityMenuCreate.getCityList().size(); i++) {
    // code
}

相关问题