java 初始化后添加到数组

java add to array after initialize

public class Loop {
   public static void main(String args[]) {
        String array[] = {"chocoalte", "cheese"};
        System.out.println(array[0]);
        array[2] = "coco";
    }
}

为什么这行不通? eclipse 给了我一个 ArrayIndexOutOfBoundsException 我假设我不能在 java?

中这样做

Java 数组是固定大小的。 ArrayList,另一方面,可以追加到。

不,数组是 Java 中的固定大小。我建议改用 List

public class Loop {
    public static void main(String args[]) {
       List<String> food = new ArrayList<String>();
       food.add("chocolate");
       food.add("cheese");
       food.add("coco");
       food.add("French Fries");
    }
 }

ArrayList class 由数组支持,class 足够聪明,可以创建一个新列表并在需要增长时将所有元素复制到其中.您可以自己实现它,或者您可以利用经过充分测试和理解的代码并使用库 classes 之一(ArrayList or LinkedList,具体取决于您的需要)。