gpt4 book ai didi

java - 传递和修改全局数组

转载 作者:行者123 更新时间:2023-12-02 06:04:47 26 4
gpt4 key购买 nike

注意

这是在检查 StackOverflow 之前未彻底调试代码的示例。代码中其他地方的错误导致这部分失败。这里的东西并没有什么真正的“错误”……所以,请随意使用这个作为例子。不需要进一步的答案:) 谢谢!

这是一些代码:

public static int[] code = new int[95];

//main method, array is populated with other methods, etc...

checkOrientation(code);

public static void checkOrientation(int[]code) {
if (code[4] != 0) {
System.out.println("Upside down!");
for (int i = 4; i < code.length-6; ++i) {
if (code[i] == 1) {
code[i] = 0;
} else {
code[i] = 1;
}
}
}
}

我想知道如何传递该全局数组并修改它。因此,目标是代码可重用性,我可以将任何数组传递给此方法并使其工作。

也许我需要让它返回一个数组并将其分配给一个新数组?我不想创建更多数组,我的代码已经因为各种突变的数组副本而变得有点臃肿。

另外:暂时远离 ArrayList,所以我不会使用它们。

如有任何建议,我们将不胜感激:)

澄清:
这段代码的作用是翻转位...所以如果数组元素 [5] 是 1,它将数组元素 [5] 更改为 0,反之亦然。因此,我想将其保留在同一个数组中,因为它的大小不会改变,并且我不再需要原始数组。

最佳答案

您在这里所做的是通过使用同名的函数参数来隐藏您的全局变量code。在您的函数中,code 将引用传递的参数,而不是全局变量。由于变量具有全局范围,因此您不需要将其作为参数传递给函数。

关于java - 传递和修改全局数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22388050/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com