虽然作者一直告诉我忽略我目前无法理解的东西,但我真的不能,所以请解释一下“参考”到底在做什么:
class TestArrays {
public static void main(String [] args) {
int [] index = new int[4];
index[0] = 1;
index[1] = 3;
index[2] = 0;
index[3] = 2;
String [] islands = new String[4];
islands[0] = “Bermuda”;
islands[1] = “Fiji”;
islands[2] = “Azores”;
islands[3] = “Cozumel”;
int y = 0;
int ref;
while (y < 4) {
ref = index[y];
System.out.print(“island = “);
System.out.println(islands[ref]);
y = y + 1;
}
}
}输出:
island = Fiji
island = Cozumel
island = Bermuda
island = Azores发布于 2015-05-05 00:45:07
Ref不做任何事情,因为它不会发生在程序中:) Java是区分大小写的!ref用于临时存储数组索引中的元素,然后用于引用数组岛屿上的元素。这是一种称为“查找表”的技术的应用程序。
所以,当y= 0,
ref = index[y]获取索引中的第0‘元素,即1。
islands[ref]变成了
islands[1]因此,从岛屿阵列中获取“斐济”。
发布于 2015-05-05 00:48:35
ref实际上被用作数组岛的参数,它接受数组“索引”的输出,并向数组“岛”提供输入。
while循环中的迭代如下所示
y=0 ref=1 islands[1]=Fiji
y=1 ref=3 islands[3]=Cozumel
y=2 ref=0 islands[0]=Bermuda
y=3 ref=2 islands[2]=Azores如您所见,输出的顺序与索引数组的顺序不同,这就是使用ref的原因。
希望能帮上忙。
发布于 2015-05-05 00:42:23
ref就像一个指针,在本例中,ref切换了它指向的对象,并将它们打印到循环中的屏幕上。
https://stackoverflow.com/questions/30042417
复制相似问题