为什么在声明变量后我们无法使用数组初始化器。
例如:
int arr[];
arr = {1,2,3,4};
但是,
int arr[] = {1,2,3,4};
是对的。 在声明变量后是否有任何方法可以使用数组初始化。
答案 0 :(得分:7)
你可以这样做。
int arr[];
arr = new int[]{1, 2, 3, 4};
答案 1 :(得分:2)
因为数组不像java那样工作。
int arr[4];
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
arr[3] = 4;
答案 2 :(得分:0)
示例: -
int data[] = new int[] {10,20,30,40,50,60,71,80,90,91 };
或
int data[];
data=new int[] {10,20,30,40,50,60,71,80,90,91 };
答案 3 :(得分:0)
创建一个数组,声明它,分配它并初始化它有三个步骤。
声明数组 与Java中的其他变量一样,数组必须具有特定类型,如byte,int,String或double。只有适当类型的变量才能存储在数组中。例如,你不能拥有一个存储整数和字符串的数组。
与Java中的所有其他变量一样,必须声明数组。声明数组变量时,使用[]后缀类型以指示此变量是数组。以下是一些例子:
int [] k; float [] yt; String [] names;
换句话说,你声明一个数组,就像你声明任何其他变量一样,除了你将括号添加到变量类型的末尾。
分配数组 声明一个数组只是说它是什么。它不会创建数组。要实际创建数组(或任何其他对象),请使用new运算符。当我们创建一个数组时,我们需要告诉编译器将在其中存储多少个元素。以下是我们如何创建上面声明的变量:
k = new int [3]; yt = new float [7]; names = new String [50];
括号中的数字指定数组的维数;即它必须保留多少个插槽值。高于k的尺寸可以容纳三个整数,yt可以容纳七个浮点数,名称可以容纳五十个字符串。因此,此步骤有时称为对数组进行尺寸标注。更常见的是,这称为分配数组,因为此步骤实际上将数组所需的内存放在RAM中。
这也是我们第一次看到新运营商。 new是java中的保留字,不仅用于分配数组,还用于分配各种对象。 Java数组是完全成熟的对象。目前它主要暗示的是我们必须用新的方式分配它们。
初始化数组 数组的各个元素由数组名称和表示它们在数组中的位置的整数引用。我们用来识别它们的数字称为数组的下标或索引。下标是从0开始的连续整数。因此,上面的数组k具有元素k [0],k [1]和k [2]。由于我们从0开始计数,因此没有k [3],并且尝试访问它将生成ArrayIndexOutOfBoundsException。
您可以在任何使用不属于数组的类似类型变量的地方使用数组元素。
以下是我们如何在我们一直使用的数组中存储值:
k [0] = 2; k [1] = 5; k [2] = -2; yt [6] = 7.5f; names [4] =“Fred”;
我们甚至可以同时声明,分配和初始化一个数组,如下所示提供括号内的初始值列表:
int [] k = {1,2,3}; float [] yt = {0.0f,1.2f,3.4f,-9.87f,65.4f,0.0f,567.9f};