简体   繁体   English

(初学者Java)Main方法是指单独的类中的一个保存数组的方法。 第二类的方法将如何设置?

[英](Beginner Java) Main method refers to a method in a seperate class which holds arrays. How would the method in the second class be set up?

My main method has: the arrays 我的主要方法有:数组

String[] numbers = {"1", "2", "3", "4", "5", "6", "7"};
String[] brands= {"aa", "bb", "cc", "dd", "ee", "ff", "gg"};
String[] types= {"hh", "ii", "jj", "kk", "ll", "mm", "nn"};

a reference to my second method (in the same package with class name Soda) 对我的第二种方法的引用(在与类名Soda相同的包中)

 Soda[] list = new Soda[numbers.length];
 list = listOfSodaCans(numbers,brands,types);

I know my listOfSodaCans method in my Soda class has to receive the parameters in the form of (java.lang.String[],java.lang.String[],java.lang.String[]) but I can't seem to get this set up. 我知道我的Soda类中的listOfSodaCans方法必须以(java.lang.String[],java.lang.String[],java.lang.String[])的形式接收参数,但是我似乎无法进行设置。 I repeatedly get a cannot find symbol. 我反复得到一个找不到符号。 Does anyone have some advice on what a general structure would look like for the listOfSodaCans method? 有人对listOfSodaCans方法的一般结构有什么建议吗?

Thank you! 谢谢!

@Alice- my Soda method: @ Alice-我的汽水方法:

public class Soda {

private Soda[] listOfSodaCans;


          public Soda[] getListOfSodaCans() {
           return listOfSodaCans;
       }

 public void setListOfSodaCans(Soda[] listOfSodaCans) {
       this.listOfSodaCans= listOfSodaCans;
        }

    public static Soda[] listOfSodaCans(String[] numbers, String[] brands,
            String[] types) {
        // more code
        return null;
    }
}

Here is something that works. 这是可行的。 I use the "main" class (so only one) to simplify the code, but it shall be the same. 我使用“ main”类(所以只有一个)来简化代码,但是应该相同。

import java.io.Console;

public class Main {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        String[] numbers = {"1", "2", "3", "4", "5", "6", "7"};
        String[] brands= {"aa", "bb", "cc", "dd", "ee", "ff", "gg"};
        String[] types= {"hh", "ii", "jj", "kk", "ll", "mm", "nn"};

        Main m = new Main();

        m.listOfSodaCans(numbers, brands, types);
    }


    public void listOfSodaCans(String[] numbers, String[] brands, String[] types) {
        System.out.println(numbers.length);
    }

}

Soda Class 苏打水类

 public class Soda {
    public static Soda[] listOfSodaCans(String[] numbers, String[] brands,
            String[] types) {
        // more code
        return null;
    }
}

Main Class will like that 主班会这样

public static void main(String[] args) {

        String[] numbers = { "1", "2", "3", "4", "5", "6", "7" };
        String[] brands = { "aa", "bb", "cc", "dd", "ee", "ff", "gg" };
        String[] types = { "hh", "ii", "jj", "kk", "ll", "mm", "nn" };

        Soda[] list = new Soda[numbers.length];
        list = Soda.listOfSodaCans(numbers, brands, types);

        // way 2, accessing by instance
        // Soda soda = new Soda();
        // list = soda.listOfSodaCans(numbers, brands, types);
    }

If you use way 2, you better remove static from listOfSodaCans() 如果使用方法2,则最好从listOfSodaCans()删除static listOfSodaCans()

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM