【问题标题】:Declaring an Array and altering its contents [duplicate]声明一个数组并改变它的内容[重复]
【发布时间】:2014-03-06 17:36:11
【问题描述】:

我正在编写测试代码来探索数组的属性。 为什么会这样

public static void main(String[] args){
    int[] testing={1,2,3};
    for(int i = 0;i<testing.length;i++){
        System.out.println(testing[i]);
    }
}

为什么这不起作用?

public static void main(String[] args){
    int[] testing= new int[3];
    testing = {1,2,3};
    for(int i = 0;i<testing.length;i++){
        System.out.println(testing[i]);
    }
}

Array 的什么原因阻止了它的有效性?

【问题讨论】:

  • 这只是一个语言设计决定。事实上,我想不出为什么它不应该在作业中被允许的技术原因。不过,允许它作为方法参数可能会导致重载解决问题。

标签: java arrays


【解决方案1】:

因为Java Language Specification是这么说的

可以在声明中指定数组初始值设定项(第 8.3 节、第 9.3 节、 §14.4),或作为数组创建表达式(§15.10)的一部分,创建 一个数组并提供一些初始值。

所以你可以像现在一样使用它

int[] testing = {1,2,3};

或作为数组创建表达式的一部分

testing = new int[]{1,2,3};

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-08-03
    • 2020-09-20
    • 1970-01-01
    • 2018-03-18
    • 2020-01-24
    • 2018-10-02
    • 1970-01-01
    • 2021-04-19
    相关资源
    最近更新 更多