这篇文章主要介绍了Java中怎么声明和创建数组的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Java中怎么声明和创建数组文章都会有所收获,下面我们一起来看看吧。

数组

数组 (Array) 是有序数据的集合, 在 Java 中 java.util.Arrays包含用来操作数组的各种方法, 比如排序和搜索等. 其所有方法均为静态方法, 调用起来非常简单.

声明数组的两个方法

方法一:

数据类型[] array;

方法二:

数据类型 array[];

创建数组的两个方法

方法一:

数据类型[] array = new 数据类型[n];

int[] array = new int[10];

方法二:

数据类型[] arrray = {value1, value2, ...}

int[] array = new int[10];

索引

索引 (Index) 可以帮助我们定位到想要的数据, 大幅提高数据的检索速度.

自定义数组泛型

<E>示一种指定的数据类型, 叫做泛型. E, 取自 Element (元素) 的首字母. 在出现 E 的地方, 我们使用一种引用数据类型将其替换即可, 表示我们将存储哪种引用类型的元素.

构造函数

//有参构造publicArray(intcapacity){data=(E[])newObject[capacity];size=0;}//无参构造publicArray(){this(10);}元素操作

//头部添加元素publicvoidaddFirst(Eelement){//如果超过数组最大容量,扔出异常if(size==data.length){thrownewRuntimeException("arrayisfull!");}//列表所有index及元素后移for(inti=size-1;i>=0;i--){data[i+1]=data[i];}//数组第size个赋值为elementdata[0]=element;//数组大小+1size++}//尾部添加元素publicvoidaddLast(Eelement){//如果超过数组最大容量,扔出异常if(size==data.length){thrownewRuntimeException("arrayisfull!");}//数组第size个赋值为elementdata[size]=element;//数组大小+1size++;}//通过索引添加元素publicvoidadd(intindex,Eelement){//如果超过数组最大容量,扔出异常if(size==data.length){thrownewRuntimeException("reachedmaxcapacity");}if(index<0||index>size){thrownewRuntimeException("invalidindex");}//列表所有index及以后的元素后移for(inti=size-1;i>=index;i--){data[i+1]=data[i];}data[index]=element;size++;}调用

publicstaticvoidmain(String[]args){//创建数组Arrayarray=newArray(10);//尾部添加array.addLast(2);array.addLast(3);array.addLast(4);System.out.println(array.toString());//头部添加array.addFirst(1);array.addFirst(0);System.out.println(array.toString());//通过index添加元素array.add(0,-1);array.add(6,5);System.out.println(array.toString());}

输出结果:

Array{data=[2, 3, 4, null, null, null, null, null, null, null]}
Array{data=[0, 1, 2, 3, 4, null, null, null, null, null]}
Array{data=[-1, 0, 1, 2, 3, 4, 5, null, null, null]}

完整代码

importjava.util.Arrays;publicclassArray<E>{privateE[]data;//存放数据privateintsize;//存放数组元素个数//有参构造publicArray(intcapacity){data=(E[])newObject[capacity];size=0;}//无参构造publicArray(){this(10);}//获取数组容量publicintgetCapacity(){returndata.length;}//获取数组元素个数publicintgetSize(){returnsize;}//判断数组是否为空publicbooleanisEmpty(){returnsize==0;}//头部添加元素publicvoidaddFirst(Eelement){//如果超过数组最大容量,扔出异常if(size==data.length){thrownewRuntimeException("arrayisfull!");}//列表所有index及元素后移for(inti=size-1;i>=0;i--){data[i+1]=data[i];}//数组第size个赋值为elementdata[0]=element;//数组大小+1size++;}//尾部添加元素publicvoidaddLast(Eelement){//如果超过数组最大容量,扔出异常if(size==data.length){thrownewRuntimeException("arrayisfull!");}//数组第size个赋值为elementdata[size]=element;//数组大小+1size++;}//通过索引添加元素publicvoidadd(intindex,Eelement){//如果超过数组最大容量,扔出异常if(size==data.length){thrownewRuntimeException("reachedmaxcapacity");}if(index<0||index>size){thrownewRuntimeException("invalidindex");}//列表所有index及以后的元素后移for(inti=size-1;i>=index;i--){data[i+1]=data[i];}data[index]=element;size++;}@OverridepublicStringtoString(){return"Array{"+"data="+Arrays.toString(data)+'}';}publicstaticvoidmain(String[]args){//创建数组Arrayarray=newArray(10);//尾部添加array.addLast(2);array.addLast(3);array.addLast(4);System.out.println(array.toString());//头部添加array.addFirst(1);array.addFirst(0);System.out.println(array.toString());//通过index添加元素array.add(0,-1);array.add(6,5);System.out.println(array.toString());}}

关于“Java中怎么声明和创建数组”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“Java中怎么声明和创建数组”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注亿速云行业资讯频道。