Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
方法中的数组值不能返回到main(java)_Java_Arrays_Parameter Passing_Cannot Find Symbol - Fatal编程技术网

方法中的数组值不能返回到main(java)

方法中的数组值不能返回到main(java),java,arrays,parameter-passing,cannot-find-symbol,Java,Arrays,Parameter Passing,Cannot Find Symbol,我是Java新手,我也在试图弄清楚返回语句是如何与数组一起工作的。在程序中,我试图将以“squares”方法填充的数组返回到main。我的意图是编写一个方法int[]squares(intn),它返回一个数组,其中所有自然数的平方从1到n。 目前我正在测试并试图找出如何通过myArray。 我得到的错误是 java:7:错误:找不到符号int[]mainArray=myArray;" 公共类数组8{ 公共静态void main(字符串[]args) { 正方形(3); int[]mainArra

我是Java新手,我也在试图弄清楚返回语句是如何与数组一起工作的。在程序中,我试图将以“squares”方法填充的数组返回到main。我的意图是编写一个方法
int[]squares(intn)
,它返回一个数组,其中所有自然数的平方从1到n。 目前我正在测试并试图找出如何通过
myArray
。 我得到的错误是

java:7:错误:找不到符号int[]mainArray=myArray;"

公共类数组8{
公共静态void main(字符串[]args)
{
正方形(3);
int[]mainArray=myArray;//找不到符号
对于(int i=0;i
myArray是squares()方法的本地方法。您只能从该方法访问它

你想要的是:


mainArray=squares(3);

myArray是squares()方法的本地数组。您只能从该方法访问它

你想要的是:


mainArray=squares(3);

您需要收集从squares方法返回到变量mainArray的输出,如下所示。 变量myArray是方法square的局部变量,因此在主方法中不可用

int[] mainArray = squares(3);
public static void main(String[] args)
{
    int[] myArray = squares(3);
    int[] mainArray = myArray; 

    for(int i = 0; i < mainArray.length; i++){
      System.out.println(mainArray[i]);
    }
}

您需要收集从squares方法返回到变量mainArray的输出,如下所示。 变量myArray是方法square的局部变量,因此在主方法中不可用

int[] mainArray = squares(3);
public static void main(String[] args)
{
    int[] myArray = squares(3);
    int[] mainArray = myArray; 

    for(int i = 0; i < mainArray.length; i++){
      System.out.println(mainArray[i]);
    }
}

您创建了int[]myArray作为squares()方法的一部分,该方法是局部变量。 如果要使用它,可以将其创建为全局变量,然后可以赋值

如果要测试int[]返回类型的工作方式,可以更改代码 int[]mainArray=myArray;到
int[]mainArray=squares(3);-在这一行中,retun int[]将被分配给mainArray。

您创建了int[]myArray作为squares()方法的一部分,该方法是局部变量。 如果要使用它,可以将其创建为全局变量,然后可以赋值

如果要测试int[]返回类型的工作方式,可以更改代码 int[]mainArray=myArray;到
int[]mainArray=squares(3);-在这一行中,retun int[]将被分配给mainArray。

您尚未在main方法中初始化myArray,myArray form your squares()方法超出了main方法的范围

int[] mainArray = squares(3);
public static void main(String[] args)
{
    int[] myArray = squares(3);
    int[] mainArray = myArray; 

    for(int i = 0; i < mainArray.length; i++){
      System.out.println(mainArray[i]);
    }
}
publicstaticvoidmain(字符串[]args)
{
int[]myArray=正方形(3);
int[]mainArray=myArray;
对于(int i=0;i
将解决您的问题,但外观更干净

{
int[] mainArray = squares(3); 

for(int i = 0; i < mainArray.length; i++){
  System.out.println(mainArray[i]);
    }
}
{
int[]主数组=正方形(3);
对于(int i=0;i
您尚未在主方法中初始化myArray,myArray form your squares()方法超出了主方法的范围

int[] mainArray = squares(3);
public static void main(String[] args)
{
    int[] myArray = squares(3);
    int[] mainArray = myArray; 

    for(int i = 0; i < mainArray.length; i++){
      System.out.println(mainArray[i]);
    }
}
publicstaticvoidmain(字符串[]args)
{
int[]myArray=正方形(3);
int[]mainArray=myArray;
对于(int i=0;i
将解决您的问题,但外观更干净

{
int[] mainArray = squares(3); 

for(int i = 0; i < mainArray.length; i++){
  System.out.println(mainArray[i]);
    }
}
{
int[]主数组=正方形(3);
对于(int i=0;i
语法是
int[]mainArray=squares(3);
`myArray是squares方法的局部变量。它只能在该方法内部使用。这是一个非常基本的问题,应该通过阅读Java书籍或教程来回答。谢谢。我更喜欢边做边学,但我偶尔会看看这本书。语法是
int[]主阵列=正方形(3);
`myArray是squares方法的一个局部变量。它只能在该方法中使用。这是一个非常基本的问题,应该通过阅读Java书籍或教程来回答。谢谢。我更喜欢边做边学,但我偶尔也会看看这本书。谢谢。效果很好。我觉得返回值在通过引用its名称,squares方法将自动对main可用。不过我可以看出这可能超出范围。谢谢。工作得很好。我的印象是,通过引用its名称,squares方法中的返回值将自动对main可用。我可以看出这可能超出范围不过,我很高兴。