这是我正在为学校分配的课程中的一部分。
我需要的数组pc2 []只能(据我所知)可以在循环内分配,并且在循环内也可以正确打印。但是,当我要将其传递给函数ultra1()时,无法识别数组pc2 []。
如果有人有任何想法,请尽快分享。提前致谢!

void ultra()
{
    String pc[]={"Inspiron 14 3000 Series","Inspiron 15 3000 Series","Inspiron 11 3000 Series","Inspiron 15 - 7000 Series"};
    int bud[]={30190,28390,30990,81990,123990,186690,69990,48890,34990,38190};
    String pc3[]=new String[10];
    System.out.println("Please enter your maximum budget");
    int max=sc.nextInt();
    for(int i=0;i<4;i++)
    {
        if(bud[i]<=max)
        {
            String pc2[]={pc[i],pc[i],pc[i],pc[i]};
            System.out.println(pc2[i]);
        }
    }
    ultra1(pc2);
}

最佳答案

pc2在与ultra1(pc2);相同的范围内未定义。

pc2仅存在于此处:

{
    String pc2[]={pc[i],pc[i],pc[i],pc[i]};
    System.out.println(pc2[i]);
}


您可以在与ultra1(pc2);相同的范围内定义它:

String pc2[];
for(int i=0;i<4;i++)
{
    if(bud[i]<=max)
    {
        pc2[]={pc[i],pc[i],pc[i],pc[i]};
        System.out.println(pc2[i]);
    }
}
ultra1(pc2);

07-26 00:05