[Java手记]数组的应用
什么是数组
数组是用来存储固定大小的同类型元素。你可以声明一个数组变量,如 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);
}
}
版权声明:
本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自
屠龙少年!
喜欢就支持一下吧