{{1}}
我正在尝试创建一种方法" Array"这将采用数组a1和a2,并将+10加到a1的长度。我的问题是我不知道如何正确命名方法以及如何在主要方法中调用它以便打印。
我尝试在Array的构造函数中传递a1和a2,但它不起作用。我也尝试直接在main()中打印,但它也没有工作。我错过了什么?
答案 0 :(得分:2)
不知道你想要做什么但是在Java中你不能在声明数组后改变数组的大小但是如果你想使用可以改变大小的数组那么你应该使用arraylist而不是数组和另外一件事设置b = a
不会工作顺便说一下这是一个代码,它将元素从一个数组交换到另一个数组但是再一次你不能改变java中数组的大小:我返回b但你不需要返回一个数组返回,因为数组变量(数组名称)是指内存位置。
public static int[] extendLength(int [] a, int [] b){
for(int i = 0; i < a.length; i++){
b[i] = a[i];
}
return b;
}
public static void main(String args[]){
int[] a1 = {1, 3, 5, 7, 2};
int[] a2 = new int[a1.length + 10];
int [] res = extendLength(a1,a2);
for(int i = 0; i < a2.length;i++)
System.out.println(a2[i]);
}
答案 1 :(得分:1)
长话短说,你设置程序的方式,你的变量也需要是静态的;否则,您的静态方法将无法访问它们。
静态字段和方法对于类来说基本上是单数;因此,如果没有导向器包含该字段的对象,则要求静态方法操作非静态字段是非常模糊的。
我也在这个节目中看到了许多其他问题;也就是说,你将toString视为一个字段(它是一个方法),你的数组方法缺少一个return语句,你的对齐就到处都是。这可能不是一个适合Stack Overflow的问题;我会鼓励您在提问之前查看教程,例如Tutorials Point上的教程。