我在将一个新数组从一个方法返回到我的main方法时出现问题。 我一直在做一些研究,不幸的是我似乎找不到答案? 我发现的答案看起来非常详细,实际上并不是我想要的。
这是我的代码:
import java.util.*;
public class SquareArray
{
public static void main (String[] args){
double a[] = new double[5];
a[0] = 0;
a[1] = 1;
a[2] = 2;
a[3] = 3;
square(b);
}
public static double[] square(double[] a){
double b[] = new double[a.length];
for(int i = 0; i < a.length-1; i++){
b[i] = a[i] * a[i];
System.out.println(b[i]);
}
return (b);
}
}
要做的所有方法都是对原始数组中的数字进行平方,存储在新数组中并返回main方法。
请原谅我的代码中的任何错误,因为我还在学习Java。
非常感谢。
答案 0 :(得分:1)
您的错误是因为您传递的变量未在Main
方法中定义或全局定义。您应该将行更改为square(a)
以传入您之前定义的数组。
其次,您的square
方法的返回类型为double[]
,但您并未将其分配给任何内容。如果您只想显示平方值,则可以简单地将其设为返回类型void
的方法。另一方面,如果你确实想要实际使用这个方法返回的数组,那么你需要声明另一个变量并像这样分配它:
double[] b = square(a);
主要优点是,如果您需要使用此方法返回的数组,比如说,在代码中使用10次,则可以使用变量而不是调用方法10次。
答案 1 :(得分:0)
如果要从方法中获取返回值,则传递当前数组并将方法传递给当前数组;
a = square(a);