繁体   English   中英

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

[英]Java: Import array of Strings from another class

我不了解其他线程中的其他答案,因此这里出现了这个问题:

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

它是这样的:

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));

    }

}

提前致谢。

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

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

您可以使用依赖项注入:

public class Demo{
  List<String> list;

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

暂无
暂无

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

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