【问题标题】:How to initialize a static array?如何初始化一个静态数组?
【发布时间】:2011-10-22 06:03:43
【问题描述】:

我已经看到了在 Java 中定义静态数组的不同方法。要么:

String[] suit = new String[] {
  "spades", 
  "hearts", 
  "diamonds", 
  "clubs"  
};

...或仅

String[] suit = {
  "spades", 
  "hearts", 
  "diamonds", 
  "clubs"  
};

或List

List suit = Arrays.asList(
  "spades", 
  "hearts", 
  "diamonds", 
  "clubs"  
);

有区别吗(当然列表定义除外)?

什么是更好的方法(性能方面)?

【问题讨论】:

    标签: java arrays static playing-cards


    【解决方案1】:

    如果你正在创建一个数组,那么没有区别,但是,以下是整洁的:

    String[] suit = {
      "spades", 
      "hearts", 
      "diamonds", 
      "clubs"  
    };
    

    但是,如果你想将一个数组传递给一个方法,你必须这样调用它:

    myMethod(new String[] {"spades", "hearts"});
    
    myMethod({"spades", "hearts"}); //won't compile!
    

    【讨论】:

      【解决方案2】:

      不,没有区别。只是syntactic sugar。 Arrays.asList(..) 创建一个附加列表。

      【讨论】:

        猜你喜欢
        • 2011-05-04
        • 1970-01-01
        • 2011-05-07
        • 1970-01-01
        • 2011-05-25
        • 1970-01-01
        • 1970-01-01
        • 2016-10-28
        相关资源
        最近更新 更多