Java:从另一个类导入字符串数组

时间:2015-09-12 09:59:36

标签: java

我不理解其他帖子中的其他答案,所以这里提出这个问题:

如何将一个字符串数组从一个类导入另一个类?这个列表非常长,这使得在一个类中使用这些方法看起来很糟糕。

它的外观如下:

List<String> countriesList = new ArrayList<>(
    Arrays.asList("Japan", 
                  "Sweden", //Etc...

我还有另一个与之相关的东西(它是一个猜测国家和城市游戏,该国家是由math.random随机化的)。

List<String> huvudList = new ArrayList<>(
    Arrays.asList(
        "Tokyo",
        "Stockholm", //Etc...

那么我如何将这些列表放在另一个类中,将它们导入我的主类并正常使用它们(所以我仍然能够将随机值随机化到列表中等等。)。有没有漂亮的方法可以做到这一点,还是我应该坚持我得到的东西?

这就是我开始上课的方式:

为什么我这样做会出错?这是怎么回事? (ListaLandQuiz是类,countriesList是列表)。它说The method countriesList(int) is undefined for the type ListaLandQuiz

  package Games;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Collections;


public class Experiments {

    public static void main(String[] args) {
        // Importing classes

        System.out.println(ListaLandQuiz.countriesList(3));

    }

}

提前致谢。

2 个答案:

答案 0 :(得分:6)

假设您希望共享和不可变列表,只需将它们设为公共和静态:

public final class MyLists {

    public static final List<String> COUNTRIES = Collections.unmodifiableList(Arrays.asList(
            "Japan", 
            "Sweden",
            //Etc..
    ));

    public static final List<String> CAPITALS = Collections.unmodifiableList(Arrays.asList(
            "Tokyo",
            "Stockholm",
            //Etc...
    ));

}

您现在可以在任何地方访问它们:

MyLists.COUNTRIES

答案 1 :(得分:0)

您可以使用依赖注入:

public class Demo{
  List<String> list;

  public Demo(List<String> list){
   this.list = list;
  }
}