我有一个方法,它将一个数组作为另一个类的参数:
public void memPass(Memory[] memLocList) {
memList = memLocList;
for (int i = 0; i < 10; i++) {
System.out.println(memList[i].getSomething());
}
}
-编辑- 上面打印出 10 个值(整数),但如果我在另一种方法中尝试相同的方法,整数介于 0 和 10 之间,我会得到一个 NPE。
谁能告诉我如何从另一个方法访问这个数组的元素,该方法也接受另一个类的参数?
我正在尝试按照以下方式做一些事情:
public void accessArray(int mem) {
int someInt = memList[mem].getSomething();
}
-编辑-对不起,我应该补充一点,这会产生 NullPointerException。
-新编辑-
好的,我现在已经编辑了代码,所以我在课堂上的所有内容是:
public class PLoop {
// instance variable
public Memory[] memlist;
// method 1
public void memPass(Memory[] memLocList) {
memList = memLocList;
System.out.println(memList.length);
}
// method 2
public void accessArray(int mem) {
System.out.println(memList.length);
}
}
第一种方法打印一个表示“memList”长度的整数,第二种方法给出一个 NPE。