什么是数组

数组是用来存储固定大小的同类型元素。你可以声明一个数组变量,如 numbers[100] 来代替直接声明 100 个独立变量 number0,number1,....,number99。

数组的操作及使用方法

1、定义声明和赋值


int[] a;//定义一个int型数组a
a = new int[8];//声明a数组里有8个元素
a[0] = 1;//数组里的元素编号从0开始,第0位元素的数据是1
a[1] = 2;
a[2] = 3;
a[3] = 4;
a[4] = 5;
a[5] = 6;
a[6] = 7;
a[7] = 8;

通常数组定义和赋值:


int[] a = {1,2,3,4,5,6,7,8};

1.1 数组的下标


int[] a = {1,2,3,4,5,6};
System.out.println(a[0]);//取数组第0位的元素,结果是1

1.2 遍历数组

遍历数组是指把数组里的元素全部打印出来


int[] a = {1,2,3,4,5,6};
		
for(int i = 0;i<a.length;i++) {
	System.out.println(a[i]);
}

.length是System类里的静态方法,用于获取长度。


int[] a = {1,2,3,4,5,6};

for(int x:a){
	System.out.println(x);
}

1.3 增加数组长度


int[] oldArray={1,2,3,4,5,6,7};//定义一个数组

int[] newArray=new int[oldArray.length+1];//定义新数组并在旧数组上加1长度
for(int i=0;i<=oldArray.length-1;i++){//控制循环次数
	newArray[i]=oldArray[i];//将旧数组的数组赋值到新数组
}

newArray[newArray.length-1]=8;//给新增的长度赋值为8
		
for(int x:newArray) {
	System.out.println(x);//打印数据
};

变动数组必须在旧数组上新建立一个数组

1.4 插入一个元素

如给第3个元素位置插入新的值


int[] oldArray={1,2,3,4,5,6,7};//定义一个数组
int[] newArray=new int[oldArray.length+1];//定义新数组并在旧数组上加1长度

for(int i=0;i<=newArray.length-1;i++){//控制循环次数
	if(i<2){
		newArray[i]=oldArray[i];//给新数组的1-2位赋值
	}else if(i==2){
		newArray[i]=0;//给新数组的第3位赋值为“0”
	}else if(i>=3){
		newArray[i]=oldArray[i-1];//给新数组大于或等于4位赋值
	}else {};
}
		
for(int x:newArray) {
	System.out.println(x);}//打印新插入了数据的数组

1.5 删除一个元素

如删除第4个元素


int[] oldArray={1,2,3,666,4,5,6,7};//定义一个数组
int[] newArray=new int[oldArray.length-1];//定义新数组并在旧数组上减1长度

for(int i=0;i<=newArray.length-1;i++){//控制循环次数
	if(i<3){//给新数组前3位赋值
		newArray[i]=oldArray[i];
	}else if(i>=3){//给新数组大于4位赋值
		newArray[i]=oldArray[i+1];//赋值时旧数组的位数加1
	}
}
for(int x:newArray) {
	System.out.println(x);}//打印新插入了数据的数组

2、数组的升序和降序 Arrays.sort方法

Arrays.sort是java内置的一种方法,只能升序不能降序

2.1 升序


import java.util.Arrays;//引入库

int[] array = {44,23,5,6545,23,54,23,5};

Arrays.sort(array);//Arrays.sort为升序方法
//此时arrays已升序排列

for(int x:array){
	System.out.println(x);//升序打印
}

2.2 降序

思路是Arrays.sort升序排列后,用for遍历反转打印,实现降序


for(int i=array.length-1;i>=0;i--){//控制i为降序循环
	System.out.println(array[i]);//降序打印
}

3、转换数据类型

利用Arrays方法里的转换方法


import java.util.Arrays;//引入库

int[] array = {44,23,5,6545,23,54,23,5};
	String s=Arrays.toString(array);//转String方法
System.out.println(s);

4、二维数组或多维数组

4.1 二维数组的表现形式


int[][] a = {{1,2,3},{4,5,6},{7,8,9}};

其思维方式为根文件夹内有3个子文件夹,
第一个文件夹内包含1,2,3
第二个4,5,6
第三个7,8,9

4.2 二位数组遍历


int[][] a = {{1,2,3},{4,5,6},{7,8,9}};

for(int i = 0;i<a.length;i//拿到外层数组长度

	for(int j=0;j<a[i].length;j++){//内层数组长度
				
		System.out.println("子目录"+i+"的元素"+a[i][j]);
	}
}


int[][] a = {{1,2,3},{4,5,6},{7,8,9}};

for(int[] i:a){
	for(int j:i){
		System.out.println(j);
	}
}
文章作者: pymdv
版权声明: 本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 屠龙少年
Java手记 数组
喜欢就支持一下吧