我正在尝试在main中创建两个Arrays然后调用一个方法,其中第一个数组(我随机化)的值被复制到第二个数组,我在调用方法和传递时遇到困难。我迷失了如何调用和传递数组 任何帮助,将不胜感激。
class C9hw5
{
public static void main(String[] args)
{
int[] ar = new int[10]; // random array
int[] at = new int[10]; // array two
Random r = new Random();
for(int i = 0; i < ar.length; i++) // initializing it to random
ar[i] = r.nextInt();
System.out.println("The random array displays");
for(int i = 0; i < ar.length; i++)
System.out.println( ar[i]);
copyArray();
}
public static void copyArray(int ar[], int at[])
{
for (int i = 0; i < at.length; i++)
at[i] = ar[i];
}
}
}
答案 0 :(得分:1)
您没有将数组传递给方法,请将copyArray();
替换为copyArray(ar, at);
。
答案 1 :(得分:0)
将代码清理一下以使其正常工作。编码员给出了上述答案的精髓。对某些选项(例如,System.arraycopy)的引用是:Is there any reason to prefer System.arraycopy() over clone()?
import java.util.Random;
class C9hw5 {
public static void main(String[] args) {
int[] ar = new int[10]; // random array
int[] at = new int[10]; // array two
Random r = new Random();
for(int i = 0; i < ar.length; i++) // initializing it to random
ar[i] = r.nextInt();
System.out.println("The random array displays");
for(int i = 0; i < ar.length; i++)
System.out.println(ar[i]);
copyArray(ar, at);
System.out.println("The second array displays");
for(int i = 0; i < at.length; i++)
System.out.println(at[i]);
}
public static void copyArray(int ar[], int at[]) {
for (int i = 0; i < at.length; i++)
at[i] = ar[i];
}
}