如何在Java中声明和初始化数组?


当前回答

下面显示了数组的声明,但未初始化数组:

 int[] myIntArray = new int[3];

下面显示了数组的声明和初始化:

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

现在,下面还显示了数组的声明和初始化:

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

但第三个显示了匿名数组对象创建的属性,该属性由引用变量“myIntArray”指向,因此如果我们只写“newint[]{1,2,3};”,那么这就是如何创建匿名数组对象。

如果我们只写:

int[] myIntArray;

这不是数组的声明,但以下语句使上述声明完成:

myIntArray=new int[3];

其他回答

声明数组:int[]arr;

初始化数组:int[]arr=new int[10];10表示数组中允许的元素数

声明多维数组:int[][]arr;

初始化多维数组:int[][]arr=new int[10][17];10行17列和170个元素,因为10乘以17等于170。

初始化数组意味着指定数组的大小。

数组有两种基本类型。

静态数组:固定大小数组(其大小应在开始时声明,以后不能更改)

动态阵列:不考虑大小限制。(Java中不存在纯动态数组。相反,最鼓励使用List。)

要声明Integer、string、float等静态数组,请使用以下声明和初始化语句。

int[]intArray=新int[10];String[]intArray=新int[10];float[]intArray=新int[10];//这里有10个索引,从0到9

要使用动态功能,必须使用列表。。。列表是纯动态数组,不需要在开头声明大小。下面是用Java声明列表的正确方法-

ArrayList<String>myArray=新ArrayList<String>();myArray.add(“值1:something”);myArray.add(“值2:更多”);

另一种声明和初始化ArrayList的方法:

private List<String> list = new ArrayList<String>(){{
    add("e1");
    add("e2");
}};

制作阵列有两种主要方法:

对于空数组:

int[] array = new int[n]; // "n" being the number of spaces to allocate in the array

对于一个初始化的数组:

int[] array = {1,2,3,4 ...};

您还可以创建多维数组,如下所示:

int[][] array2d = new int[x][y]; // "x" and "y" specify the dimensions
int[][] array2d = { {1,2,3 ...}, {4,5,6 ...} ...};

在Java 9中

使用不同的IntStream.iterate和IntStream.takeWhile方法:

int[] a = IntStream.iterate(10, x -> x <= 100, x -> x + 10).toArray();

Out: [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]


int[] b = IntStream.iterate(0, x -> x + 1).takeWhile(x -> x < 10).toArray();

Out: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

在Java 10中

使用局部变量类型推断:

var letters = new String[]{"A", "B", "C"};