Java数组:存储一组数据类型相同的数据
在内存中空间是连续的,长度一旦给定,就不能改变
数组属于引用数据类型(对象)
数组的基本概念及作用
-
数据是相同数据类型元素的集合
-
数组本身是引用数据类型,即对象。但是数组可以存储基本数据类型,也可以存储引用数据类型。
int [] a = new int[ ]{1,2,3};
String [] s = new String []{"a","b"};
数组的创建
数组的声明的两种方式:
-
数据类型 [ ] 数组名字 例如: int [ ] a;
-
数据类型 数组名字 [ ] 例如: int a [ ];
注:在Java语言中两种声明方法没有任何区别,但是建议使用第一种,避免混淆a的数据类型。
数组创建的三种方式:
声明数组的同时,根据指定的长度分配内存,但数组中素值都为默认的初始化值
int [] ary0 = new int[10];//创建一个长度为10的连续空间(未赋值)。(动态创建)
声明数组并分配内存,同时将其初始化
int [] ary1 = new int[]{1,2,3,4,5};
与前一种方式相同,仅仅只是语法相对简略
int [] ary2 = {1,2,3,4,5};
分类
从另一个角度,数组创建可以分为动态和静态两种
-
动态创建数组(没有为元素赋值,可以结合for循环进行赋值)
char [] chAry = new char[10];
eg1: int[] a = new int[10];
a[0] = 1;//为数组指定空间位置赋值
a[1] = 2;
System.out.println(Array.toString(a));
结果:[1,2,0,0,0,0,0,0,0,0]
int [] b = {1,2,3,4,5};
// 0,1,2,3,4
System.out.println(b[2]);//获得数组指定位置的值
结果:3
-
静态创建数组,在创建的时候,即为每个元素赋初值
int[] ary1 = new int[]{1,2,3,4,5};
数组的长度:length属性
int [] b1 = new int []{1,2,3,4,5,6,7};
System.out.println(b1.length);
数组元素索引(下标):就是每一个空间的标号
特点:最小值为0,最大值为 长度-1
遍历
1、数组元素的遍历(使用循环生成数组索引,获取每一个位置的值):
int[ ] a = {1,2,3,3,45,5,6};
for(int i = 0;i<a.length;i++){
System.out.println(a[i]);
} //结果:1 2 3 3 45 5 6
2、判断数组有没有包含8:
int[ ] a = {1,2,3,3,45,8,6};
for(int i = 0;i<a.length;i++){
if(a[i]==8){
System.out.println("包含8");
break;
}
}//结果:包含8
——————增强for循环:——————
3、 int[ ] a = {1,2,3,3,45,5,6};
for(int t :a){
System.out.println(t);//结果:1 2 3 3 45 5 6
}
4、判断数组有没有包含8:
int[ ] a = {1,2,3,3,45,8,6};
for(int t :a){
if(a[i]==8){
System.out.println("包含8");
}
}