刚开始接触java的数组时,我觉得java的数组和c++的数组虽然大致上差不多但细节上差很多,我也因此差点混乱了。后来自己仔细理了一下发现java和c++的数组只在定义和初始化上存在几点差异,而其他部分基本是一样的。下面将Java数组的定义和初始化理一遍。
数组的定义:
java中数组的定义有两种方式:type[] array; 或 type array[];
java中定义数组时不能指定数组长度。
数组必须先定义后使用。
而在c++中。。。。。
数组定义只能使用 type array[] 这种方式,而且除非数组定义同时赋初值,数组定义时必须指明数组的长度。
数组的初始化:
①静态初始化
java中数组静态初始化的方式:type[] aray=new type[]{a1,a2,a3}; 或 type[] array={a1,a2,a3};显然后者更方便
系统根据{}里的内容决定数组的长度
而在C++中。。。。。
不能使用new来静态初始化,可以通过 type array[]={a1,a2,a3}; 的方式静态初始化
②动态初始化
java中数组动态初始化的方式:type[] array=new[lenth];
而在c++中数组动态初始化是这样的: type array=new type[lenth]; 而且动态分配的堆内存全部都要手动回收。