Java 中的数组(Array)
数组的特点
- 1、数组一旦定义,里面装的数据类型是一致的
- 2、数组一旦定义,长度不可改变
- 3、数组存储的数据,在内存中是连续的
- 4.索引查找速度最快,时间复杂度是O(1);元素查找速度最慢,时间复杂度是O(n)
如何创建数组
1.定义数组的方式,[]是定义数组标识
- 创建一个数组容器,并将这个容器赋值给 array 变量
- 在构建的时候,需要指定数组的大小
- new int[5] 代表构建一个长度为5的存储int类型的数组
//方式一
int [] array;
array = new int[5];
//方式二
int[] array2 = new int[5];
//方式三
int[] array3;
array3 = new int[]{45,98,37,9,8};
//方式四
int[] array4 = new int[]{45,98,37,9,8};
//方式五
int[] array5 ={45,98,37,9,8};
数组的插入
int[] array = {23, 1 ,34 , 2 ,67, 32} ;
// 将 15整个数据、插入到 数组的第三个位置中 // {23, 1, 15, 32, 2, 67, 32}
// 获取原数组的长度
int len = array.length ;
// 构建一个新数组、该数组用来存储添加元素后的内容
int[] newarray = new int[ len + 1 ] ;
int pos = 2 ; // 插入的位置
for(int i=0 ; i<array.length ; i++) {
if (i < pos) {
newarray[i] = array[i] ;
}else {
//int relation = i - pos ; // 已经从后移动了 几个元素
// 从数组的最后一个元素,开始,将数据拷贝到新数组的最后一个位置
//newarray[len - relation] = array[len - 1 - relation] ;
newarray[i + 1] = array[i] ;
}
}
// 将 15 插入 Pos 定义的位置上
newarray[pos] = 15 ;
System.out.println(Arrays.toString(newarray));
数组的默认值
byte
、short
、int
、long
数组默认值为 0boolean
数组默认值为false
- 浮点 数组 默认值 为
0.0
String
数组 默认值为null
除了八种基本数据类型外,其余各种数组默认值是各种null- 数组的唯一属性::数组的 长度
array.length
- 数组中调用的是
array.lenth
属性,不加() - 字符串中调用的是方法,加()
//创建一个长度为 5 的数组
int[] array = new int[5];
//将数组中的第一个元素设置为10
array[0] = 10;
//获取数组中的第一个元素的是(根据索引获取元素的值)
// 索引从 0 开始, 0 代表第一个元素
System.out.println(array[0]);
//获取数组的长度
System.out.println(array.length);
//遍历数组,并打印所有数组中的元素
for (int i=0;i < array.length;i++){
System.out.println(array[i]);
}
数组的拷贝
System.out.println(src,srcPos,dest,destPos,length)
- src : 源, 数据的来源
- srcPos : 从 源数组中的 哪一个位置 开始 复制
- dest: 目的地 数据复制到哪里
- destPos : 从 目的地 数组中 哪一个位置 开始 拷贝
- length :拷贝内容的长度
int[] array = {12, 3, 23, 34, 54} ;
int[] newarray = new int[array.length + 1] ;
//System.arraycopy(array, 2, newarray, 1, 3);
// 将原数组中的内容直接拷贝到 新数组中
System.arraycopy(array, 0, newarray, 0, array.length);
// 在 数组的第三个位置插入 15
int pos = 2 ;
for(int i = newarray.length - 2 ; i >= pos ; i --) {
// 将数组中 前一个值 复制给 后一个值
newarray[i + 1] = newarray[i] ;
}
// 将数据插入到 指定的位置
newarray[pos] = 15;
System.out.println(Arrays.toString(newarray));
Java中的构建方法
- 方法是用来完成某个功能的,可以减少代码的冗余
- Java中的方法,必须定义在类中
- 定义方法的语法
返回值
方法名
(参数列表);- 方法必须要有返回值
- 方法名遵循标识定义规则和小驼峰规则
- 参数列表是用来定义方法需要的参数,多个参数用逗号分隔
- 每一个参数的语法为 类型 参数名
如果方法没有返回值,则在