1、什么是数组
数组就是用来储存相同数据类型的数据集合,可使用共同的名称来引用数组中的数据,数组的类型有很多种,但是指定了数组的类型就只能存储这一类数据。
2、数组的特点
1、既能存储原始数据也能催出对象类型
2、长度一旦确定就不能改变
3、数组元素的下标是从0开始的
4、可以创建存储数组的数组
5、数组可以作为对象进行处理,数组具有length属性(用来表示数组的长度)
3、一维数组
1、一维数组的建立
代码示例如下:
int [] x = new int[5];//创建一个整形数组并且长度为5
(创建只需要这样的格式即可)
2、初始化一维数组
代码示例如下:
int [] x = new int[5];//创建一个整形数组并且长度为5 x[0] = 1; x[1] = 2; x[2] =3; x[3] = 4; x[4] = 55;
这样就是一个完整的数组创建
还有一种初始化方式如下:
int [] y = {1,2,3,4,5,6};//这样创建了一个长度为6的整形数组
3、一维数组的操作
访问一维数组的元素
以前面代码为例访问 x 的第一个元素即为
x [0] ;
修改一维数组
代码示例如下:
x[0] = x[0]+y[0]; System.out.println(x[0]);
结果如下:
4、数组的常用操作
1、数组的长度
数组名.length
2、数组填充
Arrays.fill(数组名,值)或者Arrays.fill(数组名, 开始下标,结束下标,值)
示例代码如下:
Arrays.fill(x,2,4,2); System.out.println(Arrays.toString(x));
结果如下:
3、数组的复制,比较,排序
复制
代码示例如下:
System.arraycopy(x,2,y,2,2);//将x从下标为2开始复制到y里的下标为2,长度为2 System.out.println(Arrays.toString(y));
结果如下:
比较:
Arrays.equals(数组1,数组2)
这里的函数的返回值是boolean,也即是true或者false
排序:
包括两种
1、函数方法
sort(数组,开始下标,结束下标)(在这里下标可以不填,默认是全部排序)函数方法排序是升序排序
2、冒泡排序
代码示例
import java.util.Arrays; public class Main { public static void main(String[] args) { int [] y = {1,0,9,8,7,4,9};//这样创建了一个长度为6的整形数组 int temp; for(int i = 0;i<y.length-1;i++){ for (int j =i;j<y.length;j++){ if (y[j]<y[i]){ temp = y[i]; y[i] = y[j]; y[j] = temp;//作一个交换操作实现排序操作 } } } System.out.println(Arrays.toString(y)); } }
结果如下:
4、数组搜索指定元素
函数方法:
Arrays.binarySearch(数组,开始位置,结束位置,查找值)(开始和结束的下标可以省略)
5、数组转化为字符串
就是前面使用过的 toString方法代码中能看到具体使用方法
5、多维数组
1、创建和声明多维数组(这里具体说二维数组)以及访问
代码示例
public class eerwei_2 { public static void main(String[] args){ int [][] a ={{1,2,3,4},{1,2,3,4},{1,2,3,4}};//创建了一个二维数组为3行4列 System.out.println(a[1][1]); } }
结果如下: