Java基础(数组)
数组
数组是按一定顺序排列的相同类型的数据集合,按名称命名,并通过编号统一管理。
数组的常见概念
1.数组名
2.下标
3.元素
4.数组长度:元素数量
阵列特性
数组是有序的。
数组本身是引用数据类型,数组中的元素可以是任何数据类型,包括基本数据类型和引用数据类型。
创建一个数组对象将在内存中打开一个完整的连续空间,数组名指的是这个连续空间的第一个地址。
一旦确定了数组的长度,就不能对其进行修改。
指定位置的元素可以直接用下标(或index)调用,速度非常快。
数组的分类
1.一维数组按维度:第二个是数组。
2.根据数组元素的类型,可以分为基本数据类型元素数组和引用数据类型元素数组。
数组的默认初始值。
1.数组元素是整数: 0
2.数组元素是浮点: 0.0。
3.数组元素是char,0或' u0000 '而不是' 0 '
4.数组元素是布尔值,false。
5.数组元素是引用数据类型: null。
java 内存构成
多维数组
如果一维数组在几何上可以看作一个线性图形,那么二维数组就相当于一个表格。
对于二维数组的理解,我们可以把它想象成一堆数组1和一维数组2的另一个元素。其实从阵列底层的运行机制来看,并没有多维阵列。
公共类ArrayTest2
公共静态void main(String[]args){ 0
//1.2D阵列的声明和初始化
//静态初始化1
int [][] arr1=new int[][] {{1,2,3},{4,5},{6,7,8 } };
//静态初始化2
int[] arr4[]=new int[][] {{1,2,3},{4,5},{6,7,8 } };
//静态初始化3
int[] arr5[]={{1,2,3},{4,5},{6,7,8 } };
//动态初始化1
String[][] arr2=新字符串[3][2];
//动态初始化2
String[][] arr3=新字符串[3][];
//2.如何在数组的指定位置调用元素
system . out . println(arr 1[0][1]);//2
system . out . println(arr 2[1][1]);//null
//system . out . println(arr 3[1][0]);//报告错误
arr3[1]=新字符串[4];
system . out . println(arr 3[1][0]);//null
//3.获取数组的长度
system . out . println(arr 4 . length);//3
System.out.println(arr4[0])。长度);//3
//4.遍历2D数组
for(int I=0;长度;I){ 0
for(int j=0;j arr4[i]。长度;j ) {
system . out . print(arr 4[I][j]);
}
system . out . println();
}
}
}
二维数组
二维数组分为外数组元素和内数组元素。
例如, int[][]arr=new int[4][3];
外层元素: arr[0],arr[1]等。
元素:arr[0][0],arr[1][2]
数组的默认初始值。
对于第一种初始化模式:例如,int[][]arr=new int[4][3];
外部元素的初始值是:地址值。
内部元素的初始值与一维数组的初始值相同。
对于第二种初始化模式:例如,int[][]arr=new int[4][];
外部元素的初始值为:null
内部元素的初始值为:不能调用,否则将报告错误。
二维数组内存解析
公共类ArrayTest3 {
公共静态void main(String[]args){ 0
int[][]arr=new int[4][3];
system . out . println(arr[0]);//[I @ 182 decdb-一元数组地址值
system . out . println(arr[0][0]);//0
system . out . println(arr);//[[I @ 7637 f22-二进制数组地址值
system . out . println(* * * * * * * * * * * * * * * * * * * * *);
float[][] arr1=新float[4][5];
system . out . println(arr 1[0]);//[F@4926097b
system . out . println(arr 1[0][0]);//0.0
system . out . println(* * * * * * * * * * * * * * * * * * * * *);
String[][] arr2=新字符串[4][2];
system . out . println(arr 2[1]);[ljava . lang . string;@2d363fb3
system . out . println(arr 2[1][1]);零
}
}
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/124356.html